-3

指定された月の範囲で、各月の予約数と対応する月の名前を取得します。1月に、2月6日、3月8日に5つのレコードを追加したとします。

各月のレコード数と対応する月の名前を含む配列で結果を取得する必要があります

array("jan"=>5,"feb"=>6,"mar"=>8) 
4

2 に答える 2

1

テーブルを作成して値を挿入するとします

create table mytable (bookingID INT, myDate timestamp);

insert into mytable values
(1,'2012-02-21 12:12:12'),
(2,'2012-02-25 12:12:12'),
(3,'2012-02-24 12:12:12'),
(4,'2012-02-23 12:12:12'),
(5,'2012-02-22 12:12:12'),
(6,'2012-04-21 12:12:12'),
(7,'2012-03-21 12:12:12');

次に、必要なものを取得するには、以下のクエリを使用します

SELECT MONTH(myDate), COUNT(MONTH(myDate)) 
FROM mytable
GROUP BY MONTH(myDate);

月名Januaryにしたい場合は、

SELECT MONTHNAME(myDate), COUNT(MONTH(myDate)) 
FROM mytable
GROUP BY MONTH(myDate);

デモ

于 2012-06-25T12:24:42.610 に答える
0
SELECT monthName, records FROM tableName WHERE month >= 1 AND month <= 12

これにより、すべての月 (1 ~ 12) が選択されます。monthName は月の名前 (各行が月であると仮定すると、12 行)、records は各行 (各月) のレコード数、tableName はテーブルの名前、month はその整数表現です。月 (1-12)

于 2012-06-25T12:24:41.023 に答える