si j'écris dans HQLEst-ce que entre dans HQL comparer strictement ou non?
A between 5 and 10
est que l'équivalent de
A >= 5 and A <= 10
ou
A > 5 and A < 10
ou un autre des 4 combinaisons?
si j'écris dans HQLEst-ce que entre dans HQL comparer strictement ou non?
A between 5 and 10
est que l'équivalent de
A >= 5 and A <= 10
ou
A > 5 and A < 10
ou un autre des 4 combinaisons?
Je n'ai trouvé aucune spécification du comportement dans les documents Hibernate, mais l'opérateur between
dans HQL est traduit dans l'opérateur between
dans SQL, ce qui est inclusif.
Alors between
dans HQL est également inclus, qui est
A between 5 and 10
est équivalent à
A >= 5 and A <= 10
évidemment il y a une certaine confusion à ce sujet. le langage naturel suggère qu'il est exclusif, mais ce n'est pas vrai. en réalité, A> = 5 et A < = 10. car il y avait déjà des réponses données contredisant (et delted), il doit y avoir plus de précisions: (de http://www.techonthenet.com/sql/between.php)
Example #1 - Numbers
The following is an SQL statement that uses the BETWEEN function:
SELECT *
FROM suppliers
WHERE supplier_id between 5000 AND 5010;
This would return all rows where the supplier_id is between 5000 and 5010, inclusive. It is equivalent to the following SQL statement:
SELECT *
FROM suppliers
WHERE supplier_id >= 5000
AND supplier_id <= 5010;
est ici la spécification sur JPQL entre: http://docs.oracle.com/cd/E17904_01 /apirefs.1111/e13946/ejb3_langref.html#ejb3_langref_between – gerrytan