我收到以下错误消息:
消息 8120,级别 16,状态 1,第 1 行列“customers.member_category”在选择列表中无效,因为它既不包含在聚合函数中,也不包含在 GROUP BY 子句中。如果语句包含 UNION、INTERSECT 或 EXCEPT 运算符,则消息 104、级别 16、状态 1、行 1 ORDER BY 项必须出现在选择列表中。
如何按案例排序结果?
谢谢
SELECT
Date,
order_id,
member_category,
COUNT(*) AS no_items,
SUM(item_amount) AS total_amount
FROM
order_items OI (NOLOCK) JOIN customers C (NOLOCK)
ON OI.CUSTOMER_NO = C.CUSTOMER_NO
WHERE
DATE = '01 FEB 2014'
GROUP BY
order_id,
member_category
UNION
SELECT
'',
'',
'Total',
COUNT(*) AS no_items,
SUM(item_amount) AS total_amount
FROM
order_items OI (NOLOCK) JOIN customers C (NOLOCK)
ON OI.CUSTOMER_NO = C.CUSTOMER_NO
WHERE
DATE = '01 FEB 2014'
GROUP BY Date WITH ROLLUP
ORDER BY Date ASC, CASE member_category WHEN 'VIP' THEN 1
WHEN 'STD' THEN 2
WHEN 'GLD' THEN 3
END