我有这个MYSQL查询
SELECT username,password,enabled FROM USERS WHERE username=?
输出3列:用户名,密码,已启用。
现在我要做的是在查询中包含email_address,在USERNAME下输出列
SELECT username,password,enabled FROM USERS WHERE username=? or email_address=?
仍然输出3列:用户名(可以来自email_address),密码,已启用。
我能这样做吗?怎么样?的
答案 0 :(得分:0)
SELECT CONCAT('"', username, '" <', email_address, '>') as username
FROM users
WHERE ...
答案 1 :(得分:0)
使用COALESCE,您应该只获得第一个可用结果。因此,如果用户名中的数据不会显示在列中,则email_address将显示。
SELECT COALESCE(username, email_address),password,enabled FROM USERS WHERE username=? or email_address=?
CONCAT_WS将从两列获取数据并将其放入一个
SELECT CONCAT_WS(' ', username, email_address),password,enabled FROM USERS WHERE username=? or email_address=?