Sureshkumar Menon
Sureshkumar Menon

Reputation: 1165

In hibernate how to use not in clause

i am having two table

jobs and production

production table has jobid field which refers jobid of jobs table.

In hibernate how to use not in clause

to achieve following sql query

SELECT * FROM jobs where job_id not in (select job_id from production);

Upvotes: 4

Views: 13567

Answers (2)

sosostris
sosostris

Reputation: 73

I think the not exist keyword is a good choice.

Suppose I have a table called "giraffe", with id as primary key, and another table called "engineer" with a column called "giraffe" which refers to the "giraffe" table as foreign key, then the following HQL query worked for me:

from Giraffe giraffe where not exists (from Engineer as engineer where engineer.giraffe = giraffe.id )

Upvotes: 0

Sean Adkinson
Sean Adkinson

Reputation: 8615

You can use HQL:

List<Job> jobs = session.createQuery(
        "from Job where id not in (select jobId from Production)"
    ).list();

Upvotes: 1

Related Questions