Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL选择查询关系表_Sql_Oracle - Fatal编程技术网

SQL选择查询关系表

SQL选择查询关系表,sql,oracle,Sql,Oracle,我对sql有点迷茫。我试图获取引用表的值,我必须遍历6个表,但没有得到任何结果。这是我的代码: SELECT v.VEHICLEPLATE, p.NAME FROM ITV i, VEHICLE v, BUYS b, PERSON p, CENTER c, WORKER w WHERE w.NICK = 'PEPE' AND c.ID = w.CENTERID AND v.VEHICLEPLATE = i.VEHICLEPLATE AND v.VEHICLEPLA

我对sql有点迷茫。我试图获取引用表的值,我必须遍历6个表,但没有得到任何结果。这是我的代码:

SELECT v.VEHICLEPLATE, p.NAME
  FROM ITV i, VEHICLE v, BUYS b, PERSON p, CENTER c, WORKER w
  WHERE
   w.NICK = 'PEPE' AND
   c.ID = w.CENTERID AND
   v.VEHICLEPLATE = i.VEHICLEPLATE AND
   v.VEHICLEPLATE = b.VEHICLEPLATE AND
   p.ID = b.PERSON;
我想得到佩佩工作的ITV的所有唱片

有人能帮我定位吗


谢谢。

对表使用显式连接而不是隐式连接,如下所示:

SELECT v.VEHICLEPLATE, p.NAME
FROM ITV i
INNER JOIN VEHICLE v ON v.VEHICLEPLATE = i.VEHICLEPLATE
INNER JOIN BUYS b ON v.VEHICLEPLATE = b.VEHICLEPLATE
INNER JOIN PERSON p ON p.ID = b.PERSON
INNER JOIN CENTER c --Need join condition here
INNER JOIN WORKER w ON c.ID = w.CENTERID
WHERE w.NICK = 'PEPE';
它更容易阅读,而且你在问题中的含蓄风格被贬低了

现在您可以看到您缺少
内部联接中心C
的联接条件。您可能还有其他问题,但从这里开始,如果仍然不正确,请向我们提供您当前的结果和预期的结果。

欢迎使用SO。请阅读并显示表架构、示例数据和预期输出