我試圖將labeled2015 和labeled2019
與if結合起來diseasetype = 3
這是我的查詢示例
SELECT * from labeled2019 labeled2015 inner join dataaaaa on diseasetype = 3 ;
這是我的表格:

2015年標簽樣本:

標簽2019的樣本:

dataaaaa表為空。順便說一下,沒有必要將查詢結果放入dataaaaa表中。顯示結果就足夠了。
請注意,它給了我[42702] 錯誤:列參考“疾病型別”是模棱兩可的錯誤。
預期結果:
獲取所有疾病型別 = 3 的照片名稱
photoname | diseasetype
32_left 3
asdf433sd 3
uj5u.com熱心網友回復:
嘗試使用“聯合”運算子。它可以將來自多個表的查詢結果合并為一個結果。所以查詢看起來像這樣:
SELECT *
from labeled2015
where diseasetype = 3
union
SELECT *
from labeled2019
where diseasetype = 3
請參閱檔案:https ://www.postgresql.org/docs/current/queries-union.html
uj5u.com熱心網友回復:
由于您希望將兩個表的條??目作為單獨的行獲取,因此僅使用UNION ALLorUNION代替 JOIN 會更容易。
SELECT photoname, diseasetype FROM labeled2015 WHERE diseasetype = 3
UNION ALL
SELECT photoname, diseasetype FROM labeled2019 WHERE diseasetype = 3
UNION ALL更快,應該是首選,但如果兩個表中出現相同的條目,則不會洗掉重復項。因此UNION,如果您想排除這種情況,請改用。由于您將結果限制在 diseasetype = 3 的條目上,因此您甚至可以撰寫SELECT photoname, 3...機器人查詢而不是列名。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/482490.html
標籤:sql PostgreSQL 内部联接
下一篇:一次將資料插入到2個相關表中?
