繁体   English   中英

Mysql从一个表中全选,从另一个表中全选

[英]Mysql Select All from one table, and some from another table Using Aliases

我发布这个问题是因为我确实设法找到了一个类似的问题 ,但是他们没有使用别名。

我有两个表-我想从table1获取所有内容,而仅从table2获取user_nameTeam

我原来的查询是从table2获取所有内容

SELECT * 
FROM qabin.allqas t1 
JOIN login.users t2 
ON (t1.Submitter = t2.user_name) 
WHERE t1.Status='Complete'

一切都很好,并且工作正常,但是我只想获取user_nameTeam

为了使事情变得更加有趣,它们不在不同的数据库中,尽管这不是问题。

一个在qabin数据库中,另一个在login数据库中。

我努力了:

SELECT 
  qabin.allqas.* AS t1,
  login.users.Team,
  login.users.user_name
JOIN login.users t2
ON (t1.Submitter = t2.user_name)
WHERE t1.Status='Complete'

我需要t1和t2别名,因为它们在其他地方用于构建更大的查询字符串。

提前致谢!

为什么不使用子查询?

SELECT * 
FROM qabin.allqas t1 
JOIN (SELECT user_name, Team FROM login.users) t2 
ON (t1.Submitter = t2.user_name) 
WHERE t1.Status='Complete'

您不能对一组列使用一个别名(t1)。 我想您正在寻找的是这样的:

SELECT t1.*, t2.team, t2.user_name
FROM qabin.allqas t1 
JOIN login.users t2 
    ON (t1.Submitter = t2.user_name) 
WHERE t1.Status='Complete'

我建议使用t1而不是t1的真实列名。*

试试这个查询:

SELECT t1.*, t2.user_name, t2.Team
FROM qabin.allqas t1 
JOIN login.users t2 
ON t1.Submitter 1= t2.user_name
WHERE t1.Status='Complete'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM