MySQL データベースに接続する ASP.NET を使用して GridView を作成しようとしています。以下のようなデータが表示されます。
BusinessUnit OrderDate Canceled
UnitA 1/15/2013 N
UnitA 10/1/2013 N
UnitB 10/15/2013 N
UnitB 10/22/2013 N
UnitB 10/22/2013 N
上記の記録に基づいて、結果を以下のように表示したいと思います
BusinessUnit TodaysOrders ThisMonthsOrders ThisYearsOrders
UnitA 0 1 2
UnitB 2 3 3
私の現在のコードは以下です。エラーが発生しています(DatabaseName.sumに関する何かが存在しません。関数名の解析と解決のセクションを確認してください...)
Select
SUM (CASE WHEN (OrderDate)=DATE(NOW()) THEN 1 ELSE 0 END) AS TodaysOrders,
SUM (CASE WHEN YEAR(OrderDate) = YEAR(CURDATE()) AND MONTH(OrderDate) = MONTH(CURDATE()) THEN 1 ELSE 0 END) AS ThisMonthsOrders,
SUM (CASE WHEN YEAR(main_order_managers.creation_date) = YEAR(CURDATE()) THEN 1 ELSE 0 END) AS ThisYearsOrders
コードは続く
FROM OrderTable WHERE OrderTable.Canceled. <> 'Y';
ここでは Sum Case が最適な使い方ですか?