繁体   English   中英

它是查看还是加入我需要这个mysql exersice

[英]is it view or join what I need for this mysql exersice

我遇到了一个使用mysql和mphpmyadmin的小任务,我需要将两个表记录彼此组合在一起……但还希望结果指示表的来源,如下所示:

table1:表名称:“ names1”

id code name  number
1  XA   Mike  101
2  DA   Stel  344
3  MB   Dan   434
4  TR   Tina  321

table2:表名称:“ names2”

id code name number
1  DC   Man  121
2  QZ   Dan  989
3  VN   Was  912

我需要将它们组合到一个表中,然后选择,查看...要在我的脚本中使用的任何语句...如下所示:

tablename code name number
names1    XA   Mike  101
names1    DA   Stel  344
names1    MB   Dan   434
names1    TR   Tina  321
names2    DC   Man   121
names2    QZ   Dan   989
names2    VN   Was   912

尝试加入并合并失败,您是否建议创建视图? 以及您建议如何完成?

select  code, name,  number, 'names1' as tablename from table1
union
select   code, name,  number, 'names2' as tablename from table2;

还要研究工会与union all之间的差异,因为这与骗局有关(通常对于您的其他工会,如查询)

如果要将它们合并到一个结果集中 ,则可以使用union all (如@Satty建议)。

但是,如果要将它们放在一个表中,则可以将create table as

create table names as 
    select code, name, number from names1 union all
    select code, name, number from names2;

您也可以使用相同的逻辑创建视图,但是问题明确指出“一个表”。

如果您要为此创建一个VIEW:

CREATE VIEW names3 AS 
(SELECT code, 
  name,  
  number, 
  'names1' as tablename 
  from names1)
UNION
(select code, 
  name,  
  number, 
  'names2' as tablename 
  from names2);

是小提琴。

暂无
暂无

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

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