微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQL:一个查询中有两个select语句

我想在一个查询中从两个sql表中选择信息,但信息是不相关的,因此不存在潜在的关节.

一个例子可以是以下设置.

tblMadrid

id | name    | games | goals
    1 | ronaldo | 100   | 100
    2 | benzema | 50    | 25
    3 | bale    | 75    | 50
    4 | kroos   | 80    | 10

tblBarcelona

id | name    | games | goals
    1 | neymar  | 60    | 25
    2 | messi   | 150   | 200
    3 | suarez  | 80    | 80
    4 | iniesta | 40    | 5

我想要一个查询,它给了我以下内容

name    | games | goals
messi   | 150   | 200
ronaldo | 100   | 100

我试图遵循这个逻辑:Multiple select statements in Single query,但以下代码不起作用:

USE Liga_BBVA

SELECT (SELECT name,games,goals
        FROM   tblMadrid
        WHERE  name = 'ronaldo') AS table_a,(SELECT name,goals
        FROM   tblBarcelona
        WHERE  name = 'messi')   AS table_b
ORDER  BY goals

对此有何建议?谢谢
信息:足球的东西只是一个简化的例子.实际上,不可能将两个表放在一个并且有一个新的“团队”列.这两个表有完全不同的结构,但我需要一些与这个例子的特征相匹配的东西.

解决方法

你可以这样做:
(select
    name,goals
    from tblMadrid where name = 'ronaldo')
 union
 (select
    name,goals
    from tblBarcelona where name = 'messi')
order by goals;

参见,例如:https://dev.mysql.com/doc/refman/5.0/en/union.html

原文地址:https://www.jb51.cc/mssql/79314.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐