[英]Select from two tables, one column
請幫我寫一個Select:)
我需要從兩個表中返回數據:表 X 中的值,但只有那些也具有表 Y 中的值的值。例如,表 X 中的值是:
A列 | B列 | ---- |
---|---|---|
偉大的 | 橙子 | <- 附上位於表 Y 中的照片 |
較差的 | 橙子 | |
較差的 | 蘋果 | <- 附上位於表 Y 中的照片 |
驚人的 | 橙子 | <- 附上位於表 Y 中的照片 |
我需要從表 X 中返回值列 A,其中 B 列中的值是“橙色”,並且只有那些在表 Y 中附有照片的值。
表 X 與表 Y 相關聯:引用約束
姓名 | 桌子 | 表所有者 | 獨特 | 列 |
---|---|---|---|---|
表_X | 表_Y | 數據庫管理員 | 不 | 表_X_id |
我試過這個 select,但它不能正常工作,因為它在值為橙色的每一行中返回值 1:
SELECT * FROM Table_X WHERE Table_X.Column_B='Orange' AND (EXISTS (select 1 from Table_Y att, Table_X org where org.Table_X_id=att.Table_X_id and att.Table_X_id is not null))
我希望這很清楚..幫助我:)
你試過這個嗎?
Select x.ColumnA from Table_X x
left join Table_Y y on y.Table_X_id = x.Table_X_id
where x.ColumnB = 'Orange' and and y.Att is not null
我建議對之前建議的查詢稍作更改,如果您只需要出現在表 Y 上的查詢,則它應該是內部聯接:
SELECT Table_X.Column_A
FROM Table_X
INNER JOIN Table_Y
ON Table_X.Table_X_id=Table_Y.Table_X_id
WHERE Table_X.Column_B='Orange'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.