关于传递代码的SQL查询

时间:2013-01-07 19:51:53

标签: sql

我正在尝试为等待投放的订单数量创建查询。

这涉及使用delivery_status_code表中的customer_orders_delivery

状态代码包括 - DeliveredProcessingDispatched

我想选择正在处理和发送的订单数量。

目前我写道:

Select COUNT ORDER_ID 
FROM customer_orders_delivery 
WHERE delivery_status_code LIKE 'Dispatched%'OR'Processing%'

然而,这是不正确的。有人可以帮忙解决这个问题吗?

提前致谢。

3 个答案:

答案 0 :(得分:2)

您是否尝试将count()汇总与group by

一起使用
Select delivery_status_code, COUNT(ORDER_ID)
FROM customer_orders_delivery 
WHERE delivery_status_code LIKE 'Dispatched%'
  OR  delivery_status_code LIKE 'Processing%'
GROUP BY delivery_status_code 

我将delivery_status_code添加到选择列表中,以便您知道每个代码的计数。

我不确定您使用LIKE的原因,您可能可以使用:

Select delivery_status_code, COUNT(ORDER_ID)
FROM customer_orders_delivery 
WHERE delivery_status_code IN ('Dispatched', 'Processing')
GROUP BY delivery_status_code 

答案 1 :(得分:0)

由于您不希望您的答案按ORDER_ID分组,因此您无需提及它。

SELECT COUNT(*) as NumPendingOrders, delivery_status_code
FROM customer_orders_delivery 
WHERE delivery_status_code LIKE 'Dispatched%'
OR delivery_status_code LIKE 'Processing%'
GROUP BY delivery_status_code

答案 2 :(得分:0)

SELECT COUNT(Order_ID)
FROM customer_orders_delivery
WHERE delivery_status_code LIKE 'Dispatched%' 
OR delivery_status_code LIKE 'Processing%'