1

行には1〜12か月あります。

Year、、Monthおよび問い合わせの総数の3つの列があります。

問い合わせの総計を計算するために、下部に行を追加したいと思います。

SELECT 
YEAR(date) AS [Year],
MONTH(date) AS [Month],
COUNT(*) 
from EnquiryMaster 
Group By YEAR(date), MONTH(date)
4

3 に答える 3

3

SQLの「WITH ROLLUP」機能を試してみてください。

SELECT YEAR(date),
MONTH(date),
count(*) as data_nums
FROM EnquiryMaster
GROUP BY YEAR(date),MONTH(date) WITH ROLLUP

これがあなたに役立つことを願っています

于 2012-12-14T07:03:38.147 に答える
2

おそらくUIレイヤーで合計を表示する必要がありますが、本当にSQL Serverからこれを行いたい場合は、次のようなものを試すことができます

SELECT  YEAR(date) AS [Year],
        MONTH(date) AS [Month],
        COUNT(*) 
from    EnquiryMaster
Group By    YEAR(date), 
            MONTH(date)
UNION ALL
SELECT  YEAR(date) AS [Year],
        NULL,
        COUNT(*) 
from    EnquiryMaster
Group By    YEAR(date)

また、ROLLUP を使用したデータの要約 をご覧ください。

于 2012-12-14T06:38:50.517 に答える
-1
     SELECT YEAR(date) AS [Year],
            MONTH(date) AS [Month],
            COUNT(*) 
     from EnquiryMaster 
     Group By YEAR(date), MONTH(date)

このクエリでは、GROUP BY 年と月を実行しているため、特定の年の毎月 12 レコードを取得します。1 年に 1 つのレコードのみが必要な場合は、クエリから MONTH(date) を削除する必要があります。

クエリは次のようになります:-

     SELECT YEAR(date) AS [Year],
            MONTH(date) AS [Month],
            COUNT(*) 
     from EnquiryMaster 
     Group By YEAR  
于 2012-12-14T06:44:03.490 に答える