为什么我的查询返回EMPTY表?

时间:2015-11-19 00:39:05

标签: oracle-sqldeveloper

这些是我的表格和列: 客户:客户#,姓氏,名字,地址,城市,州 订单:订单#,客户#,订单日期,发货日期,发货地址,shipcost

我正在使用SQL开发人员。 题: 确定尚未发货的订单以及下订单的客户名称? 这是我写的查询:

SELECT o.order#, o.orderdate, c.lastname, c.firstname,
FROM orders o JOIN customers c
ON c.customer#=o.customer#
WHERE o.shipdate= NULL
ORDER BY orderdate;

我得到一张空桌子。我不知道为什么。 我删除了条件并测试了查询,但是当我添加WHERE +条件时,我得到一个空表。 请帮忙 提前谢谢

我有另一个问题: 列出所有居住在佛罗里达州并订购了有关计算机的书籍的客户。我的询问是

SELECT c.customer#, state, category
FROM customer c, orders o, orderitems oi, books b
WHERE c.customer#=0.customer#
AND o.order#=oi.order#
AND oi.isbn=b.isbn
AND c.state='FL'
AND b.category='computers';

我得错误命令未正确结束。 这有什么不对?

1 个答案:

答案 0 :(得分:1)

我知道在检查null时SQL Server必须是value IS NULL而不是value = NULL。我只是用谷歌搜索了Oracle DB的语法,它似乎是一样的。所以试试o.shipdate IS NULL

对于你的第二个问题,这是一个错字吗?看起来你有零而不是O。

WHERE c.customer#=0.customer#
                  ^
WHERE c.customer#=o.customer#