簡體   English   中英

mysql 連接兩個表-如何根據值的最初來源給出不同的值?

[英]mysql join two tables- how to give different value based on where the value originally come from?

假設我有兩個表 A,B


    A: NAME, ID, BIRTHDAY, COUNTRY
---------------------------------------
       john, ab123, 12/21/1999, USA
       JANE, as111, 11/02/1956, FRANCE

    B: NAME, ID, SALARY
---------------------------------------
       MARY, AS111, 12333


I WANT TO JOIN TWO TABLES WITH THESE COLUMNS :
NAME, ID, FROM_WHERE
-------------------------------
john, ab123, 'A'
JANE, as111, 'A'
MARY, AS111, 'B'

如果值源自 A,則 FROM_WHERE 顯示“A”,如果值源自 B,則顯示“B”。

SELECT NAME, ID FROM A JOIN B USING (NAME, ID)

通過上面的查詢,我應該添加什么來獲取 FROM_WHERE 值?

你可以使用UNION來做到這一點:

SELECT NAME, ID, 'A' as FROM_TABLE from A 
UNION ALL
SELECT NAME, ID, 'B' as FROM_TABLE from B 
ORDER by NAME;

暫無
暫無

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

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