0
感謝您的查看。我很難搞清楚SQL調用,它將識別所有完整的訂單,並在顏色列中至少有一個值爲「紅色」的實例。同樣,我希望它包含滿足條件的訂單的所有行。謝謝!SQL選擇在另一列中至少有一個特定值的所有非唯一行
Order Color
1 Red
1 Blue
1 Yellow
2 Red
2 Black
3 Blue
3 Green
3 Pink
感謝您的查看。我很難搞清楚SQL調用,它將識別所有完整的訂單,並在顏色列中至少有一個值爲「紅色」的實例。同樣,我希望它包含滿足條件的訂單的所有行。謝謝!SQL選擇在另一列中至少有一個特定值的所有非唯一行
Order Color
1 Red
1 Blue
1 Yellow
2 Red
2 Black
3 Blue
3 Green
3 Pink
有很多方法可以做到這一點,比如你可以使用in
斷言:
select *
from your_table
where `Order` in (
select `Order`
from your_table
where Color = 'Red'
)
,或者您可以使用exists
謂詞與相關查詢:
select *
from your_table t1
where exists (
select 1
from your_table t2
where t2.Color = 'Red'
and t1.`Order` = t2.`Order`
)
這兩個查詢都會返回:
Order Color
1 Red
1 Blue
1 Yellow
2 Red
2 Black
附註:order
是ANSI SQL標準中的保留關鍵字,因此不是列的良好名稱。
是的,這工作。謝謝! – Tommy92