簡體   English   中英

SQL查詢-我可以查詢兩個都有ID字段的表並檢索這兩個字段嗎?

[英]SQL query - Can I query 2 tables that both have an ID field and retrieve both fields?

我有兩張桌子。 兩者都有稱為“ ID”的字段。

Table 1 has "ID", "Title", "Shift"
Table 2 has "ID", "Table1ID", "Details"

我想查詢表2並基於“ ID”值檢索其所有詳細信息,但還要從表1中獲取與“ Table1ID”值相關的值。

我已經嘗試過... SELECT * FROM Table2 a, Table1 b WHERE a.TableID = b.ID

這有效,但僅檢索一個表的“ ID”字段。

我一直在玩UNION ALL,但無法正常工作。

有任何想法嗎?

謝謝

是的,您可以添加一個別名:

SELECT a.ID AID, a.Title, a.Shift, b.ID BID, b.TableID, b.Details 
FROM Table2 a, Table1 b 
WHERE a.TableID = b.ID

上面的代碼將返回表A和B中的ID作為結果中的AIDBID

有沒有辦法讓SELECT來獲取所有字段(無需顯式寫入它們)並且仍然為特定字段加上別名?

是的,有可能,但被認為是有害的

這就是你怎么做身份證

SELECT Table1.*,Table2.* from table1 inner join Table2 on Table1.ID = Table2.Table1ID;

為什么我要說它有害,請參閱此處: 為什么SELECT *被認為有害?

正確選擇應為:

SELECT Table1.ID,Table1.Title,Table1.Shift,Table2.ID.Table2.Table1ID,Table2.Details.* from table1 inner join Table2 on Table1.ID = Table2.Table1ID;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM