2017-06-05 32 views
-1

獲取EST_ID = 10和VALUE = 0且EST_ID = 11且值= 1的所有B_NAME如果存在EST_ID。如何使用多個連接編寫查詢並使用子句?

在下面的例子中,輸出應該是B1,B2。 B4不應該被選中,因爲它有EST_ID = 12。

ID B_ID  B_NAME   EST_ID    VALUE 
1  1   B1    10    0 
2  1   B1    11    1 
3  2   B2    10    0 
4  3   B3    10    1 
5  3   B3    11    0 
6  4   B4    10    0 
7  4   B4    11    1 
8  4   B4    12    1 
+0

棧是不是編碼的網站。我們幫助那些陷入困境的人。這個問題顯示沒有研究努力,或任何試圖通過自我解決問題的嘗試。此外,如果過去3個問題中的任何一個對你有所幫助,你應該接受一個答案。如果不是,解釋爲什麼這些協助可以嘗試不同的解決方案。提示在這個問題上使用where,或者count = 2.示例:https://stackoverflow.com/questions/35887975/matching-multiple-key-value-pairs-in-sql – xQbert

+0

[Matching multiple鍵/值對在SQL](https://stackoverflow.com/questions/35887975/matching-multiple-key-value-pairs-in-sql) – xQbert

+0

@xQbert這是試圖通過條款和'或'條件哪些didn沒有給出預期的結果 –

回答

0

我不知道是什麼導致查詢你這個,但你應該嘗試在您的查詢的末尾添加此:

GROUP BY B_ID HAVING ((EST_ID=10 AND VALUE =0) || (EST_ID=11 AND VALUE =1)) AND B_ID <> 4 
+0

這將返回甚至B_ID = 4即B4以及我不想要 –

+0

我改變了查詢,現在檢查 – DASH

相關問題