簡體   English   中英

從SQL Join Query重命名返回的值

[英]Rename returned values from SQL Join Query

可以說我們有以下查詢

SELECT b.user_name, c.user_name, msg 
FROM user_messages a
JOIN users b ON b.user_id = a.user_from 
JOIN users c ON c.user_id = a.user_to 
WHERE a.user_from = 'ds4EpcrmUt' 
OR a.user_to = 'ds4EpcrmUt'

從NodeJS查詢時,我只會收到一個user_names,因為兩個返回的值都具有相同的名稱。

有沒有辦法重命名他們的返回值,如下所示?

b.user_name = user_from
c.user_name = user_to

試試以下 -

SELECT b.user_name as user_from, c.user_name as user_to, msg 
FROM user_messages a
JOIN users b ON b.user_id = a.user_from 
JOIN users c ON c.user_id = a.user_to 
WHERE a.user_from = 'ds4EpcrmUt' 
OR a.user_to = 'ds4EpcrmUt'

當您引用相同的列名時,您需要不同的列別名,例如user_name1和user_name1或您喜歡的列名別名:

SELECT b.user_name user_name1, c.user_name user_name2, msg 
FROM user_messages a
JOIN users b ON b.user_id = a.user_from 
JOIN users c ON c.user_id = a.user_to 
WHERE a.user_from = 'ds4EpcrmUt' 
OR a.user_to = 'ds4EpcrmUt'
SELECT b.user_name as user_from, c.user_name as user_to, msg 
FROM user_messages a
JOIN users b ON b.user_id = a.user_from 
JOIN users c ON c.user_id = a.user_to 
WHERE a.user_from = 'ds4EpcrmUt' 
OR a.user_to = 'ds4EpcrmUt'

暫無
暫無

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

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