我在我的ColorAssign表中有以下數據;如何在沒有UNION的情況下通過SQL中的不同條件從同一表中獲取數據?
| PKID | Name | Type | HasAssigned |
| 11 | Red | 1 | True |
| 12 | Blue | 2 | False |
| 13 | Yellow | 3 | False |
| 14 | Red1 | 1 | False |
| 15 | Yellow1 | 3 | True |
| 16 | Blue1 | 2 | False |
注意,在這個表中我有顏色類型的類型字段和assignstatus在HasAssigned字段還與不同的名稱不同的主密鑰(可以是相同的名稱 - 但類型是找到的實際顏色的標識符)。
我的目標是獲取數據的條件: - 查找與Hasassigned =真色彩類型,或者該類型中沒有記錄有真實的記錄。然後鍵入Hasassigned = false的顏色類型。所以我的結果是;
| 11 | Red | 1 | True |
| 12 | Blue | 2 | False |
| 15 | Yellow1 | 3 | True |
| 16 | Blue1 | 2 | False |
這對UNION來說可能是通過編寫兩個查詢,我們可以用一個查詢來做到這一點。尋找其他優化的方式?
這是MySQL或SQL服務器? –
您的病情描述不清楚。但是,如果我理解正確,則需要爲每個Type使用HasAssigned = true的顏色,或者如果Type的任何一行沒有爲true,則HasAssigned = false。那是對的嗎? –
是斯隆,我會更新我的問題的條件。 – pvaju896