0

好的,你好,我有 2 张桌子

路由表有

route ID, frequency, start destination, final destination

操作表

Proportion, Operator name, Route ID

我需要选择运营商名称为 Arriva 的路线 ID 和频率。

我将这个 SQL 放在一起,它可以工作并得到结果,但我不确定这是否是正确的做法。

SELECT route_number, frequency
FROM route, operates
WHERE route_ID = route_number
AND operator_name =  'Arriva'
4

1 回答 1

0

这是正确的方法,只是您的第一个 where 语句是错误的:

SELECT route_number, frequency
FROM route, operates
WHERE route_ID = **route_number**
AND operator_name =  'Arriva'

它也应该是 route_ID (至少从你所说的)。为了使它工作,您需要为您的表命名,以便 SQL 知道您正在比较哪些列(因为两个表中的名称相同)。像这样:

SELECT 
    route_number, 
    frequency
FROM 
    route r, 
    operates o
WHERE 
    r.route_ID = o.route_number
    AND o.operator_name =  'Arriva'
于 2012-11-22T20:23:36.563 回答