我需要弄清楚为什么我的查询不起作用。我想进行查询:
1)制作清单:custName,No_of_orders,avg_order_amt,其中中间的列是客户的订单总数,最后一列是该客户的平均订单金额。提示:使用列别名可以获取上面列出的列标题,以便在输出中显示。此外,这还需要在SELECT子句中列出两个聚合函数。
我的意思是,我希望我的查询选择每个客户,找出每个客户的订单数量,并计算每个客户的平均订单数量。
2)查找尚未发货的订单的customerID、客户名称、orderID和订单总值。提示:尚未发货的订单的shipDate值为NULL。
你能帮我找到错误或丢失的命令吗?下面是我的表格和代码:
SQL Tables
1.
Select c.cname as custName, sum(o.orderID) as No_of_orders, avg(i.price) as avg_order_amt
From Customer c, Item i
Join Order_ o
On o.customerID = c.customerID and o.itemID = i.itemID;
Select c.customerID, c.cname, o.orderID
From Order_ o
Join Customer c
On c.customerID = o.customerID
Where o.orderDate = Null;
结果是空集。这不是我想要的。我知道customerID 77777没有顺序,所以它必须在一个集中。
3条答案
按热度按时间hgtggwj01#
以下是有关查询错误的一些提示:
(上)
此查询有两个明显的问题。最明显的问题是您使用了聚合函数,但没有
group by
子句。第二个问题是from
子句中的,
。您应该在from
子句中使用join
语法。换句话说,where
子句中的逻辑应该在一个或多个on
子句中。(下)
问题提到了
shipdate
,但我在查询中没有看到引用。polhcujo2#
使用此选项:
ckocjqey3#