sokheng
sokheng

Reputation: 31

How to select where condition equal null.

SQL statement:

select * FROM Message
 WHERE senderId = 126 and receiverId = 125
   and dateReceived is null

HQL statement:

 FROM Message
WHERE senderId = :senderId and receiverId = :receiverId
 and dateReceived is null

I got error. so how to write HQL to get result same to above sql statement?

Upvotes: 2

Views: 220

Answers (3)

sokheng
sokheng

Reputation: 31

I have solved it by

HQL Query : FROM Message WHERE senderId = :senderId and receiverId = :receiverId and dateReceived = null

Upvotes: 0

sadia
sadia

Reputation: 325

Are senderId and receiverId foreign keys? if yes, then suppose senderId is a column of Sender table and receiverId is a column of Receiver table try this one:

select msg FROM Message msg
 WHERE msg.Sender.senderId = 126 and msg.Receiver.receiverId = 125
   and msg.dateReceived is null

OR

Select msg FROM Message msg
WHERE msg.senderId = :senderId and msg.receiverId = :receiverId
 and msg.dateReceived is null

Upvotes: 2

user1264255
user1264255

Reputation: 305

Try using IS EMPTY should work.

Upvotes: 3

Related Questions