このクエリを実行するときに、テーブル内の名前「NULL」を置き換える方法を見つけるために、検索して多くのことを試しました。
SELECT
YEAR(orderdate) AS Years,
(CASE WHEN country = 'US' THEN 'US' ELSE 'WORLD' END) AS region,
SUM(netamount) AS TotSales
FROM orders o JOIN
customers c
ON o.customerid = c.customerid
GROUP BY (CASE WHEN country = 'US' THEN 'US' ELSE 'WORLD' END),YEAR(orderdate) WITH ROLLUP;
このテーブルを取得します: http://imgur.com/pzHa8fK
Null を「SubTotal」にそれぞれ「GrandTotal」に置き換えたいと思います。私はそれを試しました:
COALESCE(year(orderdate), 'Subtotal') years,...
'IFNULL(...)' と同じですが、名前を置き換える代わりに、すべての年が再度リストされ、NULL がまだ残っている年の余分な列を作成します。
何か案が?