繁体   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