2015-10-05 78 views

回答

0

有很多方法可以做到這一點,比如你可以使用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標準中的保留關鍵字,因此不是列的良好名稱。

相關問題