[英]How to differentiate between same field names of two tables in a select query?
我的數據庫中有兩個以上的表,它們都包含相同的字段名稱,例如
table A table B table C
field1 field1 field1
field2 field2 field2
field3 field3 field3
. . .
. . .
. . .
. . .
我必須編寫一個SELECT
查詢,它從這 3 個表中獲取幾乎所有相同的字段。 我正在使用這樣的東西:
select a.field1,a.field2,a.field3,b.field1,b.field2,b.field3,c.field1,c.field2,c.field3 from table A as a, table B as b,table C as c where so and so.
但是當我打印field1
的值時,它給了我最后一個表值。
如何獲取具有相同字段名稱的三個表的所有值? 我是否必須為每個表編寫單獨的查詢,或者有什么方法可以在單個查詢中獲取它們?
就這樣寫,
select a.field1 as af1,a.field2 as af2,a.field3 as af3,b.field1 as bf1,b.field2 as bf2,b.field3 as bf3,c.field1 as cf1,c.field2 as cf2,c.field3 as cf3 from table A as a, table B as b,table C as c where so and so.
這是您的編程工具如何處理重復字段名稱的人工制品。 如果您願意,可以使用AS
為字段名稱設置別名:
SELECT a.field1 AS a_field1, ...
然后它應該可以作為a_field1
訪問。
您可以為列設置別名。 例如注意:語法可能因您的數據庫而異。
SELECT
a.field1 `A_Field1`,
b.field1 `B_Field1`
SELECT
a.field1 [A_Field1],
b.field1 [B_Field1]
SELECT
a.field1 AS A_Field1,
b.field1 AS B_Field1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.