Does hibernate convert column != null
in HQL to a column is null
in SQL?
HQL "is null" And "!= null" on an Oracle column
No. You have to use is null
and is not null
in HQL.
If you do want to use null
values with '='
or '<>'
operators you may find the
very useful.
Short example for '='
: The expression
WHERE t.field = :param
you refactor like this
WHERE ((:param is null and t.field is null) or t.field = :param)
Now you can set the parameter param
either to some non-null value or to null
:
query.setParameter("param", "Hello World"); // Works
query.setParameter("param", null); // Works also
Right answer, but a bit overkill :) I do it if I have no other solutions: If there is only one or two nullable param, i find it better to make many HQL or JPQL queries. –
Leander
No. See also this link Handle conditional null in HQL for tips and tricks on how to handle comparisons with both null and non-null values.
© 2022 - 2024 — McMap. All rights reserved.