[英]SQL Query, query to having single field name from different table
我有兩個具有相同字段的表。 (請不要怪設計)。
下面僅用於示例架構
表A
ID
名稱
電話
鍵表B
ID
名稱
鍵
地址
因此,我想從單個查詢中查詢滿足條件“鍵”的表A或B的ID,名稱,無論它來自表A還是表B,返回字段都只是“ ID”和“ NAME”
簡單查詢
在a.keys ='1'或b.keys ='1'的情況下,將TABELA中的a.id,a.name,b.id,b.name從TABELA選擇為a,將TABLEB選擇為b
它將重復的id,name,id1,name1返回到結果字段。
使用union或union all。 聯合僅返回不同的行,聯合全部返回所有行
請參閱工會手冊中的示例
SELECT a.id, a.name FROM TABELA as a WHERE a.keys = '1'
union
SELECT b.id, b.name FROM TABELb as b WHERE b.keys = '1'
使用UNION
而不是CROSS JOIN
:
SELECT a.id, a.name
FROM TABELA as a
WHERE a.keys = '1'
UNION
SELECT b.id, b.name
FROM TABLEB as b
WHERE b.keys = '1'
您實際上並不是在聯接表,而是只想合並兩個不同查詢的結果。 為此,我們有UNION SELECT:
SELECT id, name FROM tableA
WHERE keys = '1'
UNION SELECT id, name FROM tableB
WHERE keys= '1'
如果要訂購結果,可以將上面用作子查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.