Does hibernate convert column != null in HQL to a column is null in SQL?
4 Answers
Comments
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
1 Comment
pdem
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.
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.