gpt4 book ai didi

MySQL - 仅根据值从一张表中填充

转载 作者:行者123 更新时间:2023-11-29 06:36:19 29 4
gpt4 key购买 nike

抱歉有一段时间没有使用SQL了。我有三张关于 super 英雄的表格。我想获取 super 英雄的名字,并根据结果从 Marvel 或 DC 检索电视名称。但是,当我应该每个名称只有一个条目时,检索信息时查询会填充两列。我的观点是:

CREATE VIEW `herotelly` AS 
SELECT distinct(a.Name), b.Title as showname, c.Title
FROM superheroes a, marveltv b, dctv c
WHERE a.Name = b.Superhero or a.Name = c.Superhero;

但是结果是

"Superman"  "Spidey Super Stories"  "Adventures of Superman"   
"Batman" "Spidey Super Stories" "Batman"
"Catwoman" "Spidey Super Stories" "Batman"
"Robin" "Spidey Super Stories" "Batman"

但我只想要一个结果,例如在第一行我只想要超人,第二列为空,然后结果在第三列。

非常感谢任何帮助。

尼尔.

最佳答案

您正在创建 marveltvdctv 之间的叉积,然后返回两者的标题。不要同时连接两个表,而是使用两个单独连接的 UNION

SELECT a.name, b.title
FROM superheroes AS a
JOIN marveltv AS b ON a.name = b.superhero
UNION
SELECT a.name, b.title
FROM superheroes AS a
JOIN dctv AS b ON a.name = b.superhero

关于MySQL - 仅根据值从一张表中填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53678905/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com