2014-01-27 37 views
0

我想編寫檢索以下查詢:不含接觸JPA查詢與其中的條款加入表連接

  • 客戶包含聯繫人
  • 客戶,但只有接觸實體地位「 AC」

    從客戶端的客戶端選擇客戶端 LEFT JOIN FETCH client.contacts接觸WHERE(client.contacts是空的或(client.contacts不爲空並且contact.status = 'AC'))

此查詢僅返回沒有聯繫人或客戶端且只有活動聯繫人的客戶端。 有人可以幫我嗎?

我使用JPA1。我無法切換到JPA2。 它也需要是JPA1查詢。

當我在我的分貝以下數據:

  • 客戶端1 - >聯繫人:用狀態的AC,接觸2狀態AR
  • 客戶端2觸點1 - >聯繫人:聯繫人3,狀態AR,接觸4狀態AR
  • 客戶端3 - >觸點:觸點5與狀態AC,接觸6狀態AC

我想檢索

只有接觸
  • 客戶端113
  • 客戶端2沒有任何接觸
  • 客戶端3接觸5和6

回答

0

「WHERE client.status = '交流' AND」 意味着你只能得到客戶狀態爲AC。 你的意思是「WHERE contact = null or contact.status ='AC'」?

+0

我的聯繫人可以爲空,也可以包含與封存狀態的接觸,但我只想要檢索非歸檔的聯繫人。 – wvp

+0

我編輯了我的帖子,以便更清楚 – wvp