Bonjour,
La base est Sybase, le type de date est datetime.
Classe Calendrier :
...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 @Id @Column(name = "CAL_CODE" ) private Integer codeCalendrier; @OneToMany(fetch = FetchType.EAGER) @JoinColumn(name = "CAL_CODE") private List<JourFerie> lstJourFerie;
Classe JourFerie:
Si je fais du native query, voilà la requête que je veux faire (et qui donne ce que je veux dans un requêteur SQL) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 @EmbeddedId private JourFeriePK pk; public static class JourFeriePK implements Serializable { @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "CAL_CODE") private Calendrier calendrier; @Column(name = "JF_DATE", columnDefinition="datetime") @Temporal(TemporalType.TIMESTAMP) private Date jourFerie; ... }
Rien à faire, ça me sort toutes les dates!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select cal.*, jf.* from CALENDRIER cal, JOUR_FERIE jf where cal.CAL_CODE *= jf.CAL_CODE and datediff(dd, getDate(), jf.JF_DATE) >= 0
EDIT : mieux, si je fait datediff(yy, getDate(), jf.JF_DATE) ça ne me sort aucune ligne (alors qu'évidememnt j'en ai en base)
Merci par avance.
Partager