sql– 如何将具有相同字段的两个表的结果连接到一个字段中?

sql– 如何将具有相同字段的两个表的结果连接到一个字段中?,第1张

概述我有这样的表: Table1 Table2 name1 | link_id name2 | link_id text 1 text 2 text 2 text 4 我想得到结果:name1 name

我有这样的表:

   table1                table2   name1 | link_ID      name2  |  link_ID   text       1         text         2   text       2         text         4

我想得到结果:

name1     name2     link_IDtext      text         1text      text         2text      text         4

我怎么能这样做?

加:
Sry,我的英语不太好.我有设备,device_model和device_type表与重复字段counter_set_ID.我想从counter_set中选择具有counter_set_ID的所有值的字段.我只需要从counter_set_ID字段中获取值

现在我有这个查询:

SELECT  `dev`.`counter_set_ID`,`mod`.`counter_set_ID`,`type`.`counter_set_ID`FROM    `device` AS `dev`left JOIN   `device_model` AS `mod` ON `dev`.`device_model_ID` = `mod`.`ID`left JOIN   `device_type` AS `type` ON `mod`.`device_type_ID` = `type`.`ID`WHERE   `dev`.`ID` = 4;

这将返回3列,但我需要一列中的所有值

这是我认为的最终变体:

SELECT  `dev`.`counter_set_ID`FROM        `device` AS `dev` left OUTER JOIN        `device_model` AS `mod` ON `dev`.`device_model_ID` = `mod`.`ID`WHERE   `dev`.`ID` = 4 AND        `dev`.`counter_set_ID` IS NOT NulLUNIONSELECT  `mod`.`counter_set_ID`FROM        `device_model` AS `mod` left OUTER JOIN        `device` AS `dev` ON `mod`.`ID` = `dev`.`device_model_ID`WHERE   `mod`.`counter_set_ID` IS NOT NulL;
最佳答案根据您提供的样本表和所需的输出,听起来您可能想要一个完整的外部联接.并非所有供应商都实现了这一点,但您可以使用left OUTER连接和UNION到EXCEPTION连接来模拟它,其中表格反转如下:

Select name1,name2,A.link_IDFrom table1 A left Outer Join     table2 B on A.link_ID = B.link_IDUnionSelect name1,link_IDFrom table2 C Exception Join     table1 D on C.link_ID = D.link_ID

然后你的输出将是这样的:

name1   name2    link_ID=====   =====    =======text    
总结

以上是内存溢出为你收集整理的sql – 如何将具有相同字段的两个表的结果连接到一个字段中?全部内容,希望文章能够帮你解决sql – 如何将具有相同字段的两个表的结果连接到一个字段中?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168939.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)