我有以下SQL查詢:MySQL的 - 組由空值
SELECT date_format(sfo.shipping_arrival_date,"%m.%Y") AS Month,
date_format(sfo.shipping_arrival_date,"%v") AS Week,
date_format(sfo.shipping_arrival_date,"%d.%m.%Y") AS Shipping Day,
CASE
WHEN sfo.coupon_code IS NOT NULL THEN sfo.coupon_code
ELSE 'no Code'
END as Coupon,
sfo.coupon_rule_name,
sfo.grand_total AS Endsumme,
sfo.base_subtotal + sfo.shipping_incl_tax AS Sum_Incl_Shipping,
sfo.discount_amount,
count(sfo.entity_id) AS uses
FROM sales_flat_order AS sfo
WHERE sfo.status <> 'canceled'
GROUP BY Coupon
ORDER BY sfo.shipping_arrival_date DESC
在sfo.coupon_code是現有值「NULL」,但查詢不一一列舉了在結果「無碼」。我想要一個分組優惠券代碼和相關值的列表。
有人知道我爲什麼在結果中找不到「無代碼」的值嗎?
謝謝。
結果是什麼?它是否在優惠券中返回相同的空值? – sravs
如果您省略了GROUP BY子句,那麼您是否收到帶有「無代碼」的coupon_code的結果?您可能在此結果集中沒有NULL值。 –
結果集中沒有「無代碼」。當我刪除group by子句時,我看到一行使用「無代碼」,但其他列都是空的。 – Torben