Bonjour,
J'aimerais convertir la requête SQL Server suivante en JPA :
J'ai ceci mais toujours avec cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT DATE_NAISSANCE AS BIRTHDAY FROM EMP_EMPLOYE EMP WHERE 1 = (FLOOR(DATEDIFF(dd,EMP.DATE_NAISSANCE,GETDATE()+7) / 365.25)) - (FLOOR(DATEDIFF(dd,EMP.DATE_NAISSANCE,GETDATE()) / 365.25))
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 final StrBuilder requete = new StrBuilder(); requete.append("SELECT employe FROM Employe employe WHERE 1 ="); requete.append(" ((OPERATOR('FLOOR', (OPERATOR('DATEDIFF', (function('dd'), employe.dateNaissance, CURRENT_DATE()+7)) / 365.25)))"); requete.append(" - "); requete.append(" (OPERATOR('FLOOR', (OPERATOR('DATEDIFF', (function('dd'), employe.dateNaissance, CURRENT_DATE()-1)) / 365.25))))");Qqun a-t-il une idée de ce qui ne va pas ?java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager:
Exception Description: Syntax error parsing [SELECT employe FROM Employe employe WHERE 1 = (OPERATOR('FLOOR', OPERATOR('DATEDIFF', (dd,EMP.DATE_NAISSANCE,CURRENT_DATE+7) / 365.25))) - (OPERATOR('FLOOR', OPERATOR('DATEDIFF', (dd,EMP.DATE_NAISSANCE,CURRENT_DATE-1) / 365.25))) AND employe.actif = 1].
[86, 128] The left expression is not an arithmetic expression.
[183, 225] The left expression is not an arithmetic expression.
Merci d'avance pour votre aide
Partager