gpt4 book ai didi

sql - 如何使用带有候选发布键的表编写查询?

转载 作者:行者123 更新时间:2023-11-29 14:27:51 24 4
gpt4 key购买 nike

我有 2 个表:Routes(route_code PRIMARY KEY, origin, destination)Stops(stop_code PRIMARY KEY, city) where origindestination 是与 stop_code 相同类型的代码。

我必须找到起点和终点在同一个城市的路线。但是,问题要求不要使用内置的 SQL JOIN。

我不确定如何比较始发城市和目的地城市。我尝试过的是:

SELECT route_code
FROM Routes AS r, Stops AS s
WHERE stop_code != stop_code AND stop_code IN (
SELECT stop_code
FROM Stops AS s1, Stops AS s2
WHERE s1.city = s2.city AND s1.stop_code != s2.stop_code
)

不过我不确定这是否是正确答案。我觉得这个查询缺少一些东西。

我上一个问题的唯一示例数据是:

route_code 的格式为 XX1234(2 个字母 4 个数字),stop_code 的格式为 ABC (3 字母代码) 和 city 例如 New York 的形式。

最佳答案

没有连接你可以这样做:

SELECT r.route_code
FROM Routes r
WHERE
(select city from stops where stop_code = r.origin) =
(select city from stops where stop_code = r.destination)

因为 stop_code 是主键,每个子查询只返回 1 行。

关于sql - 如何使用带有候选发布键的表编写查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55890647/

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