2017-09-07 7 views
0

タブレットグループで隔週でsubtotalsを合計しようとしています。最後の隔週の間隔をフィルタリングする方法については、多くの回答がありますが、グループ化を適切に行う方法については、これまでのところ解決策はありません。グループの日付Bi-Weekly

表の列:order_datesubtotal

私は毎週のグループ化で成功を収めてきましたが、それを行うにはどのようには考えがあなたのクエリに

SELECT CONCAT(YEAR(order_date), '/', WEEK(order_date)) AS week_name, SUM(subtotal) 
FROM m_orders 
+1

週間とは思わないでください。ちょうどそれらを奇数と偶数として考える – Strawberry

答えて

1

追加group by WEEK(order_date) DIV 2を隔週ない:

SELECT 
CONCAT(YEAR(order_date), '/', WEEK(order_date) DIV 2) AS fortnight_number, 
SUM(subtotal) 
FROM m_orders 
group by YEAR(order_date), WEEK(order_date) DIV 2 

年始および年末にはいくつかの問題があり、MySqlの異なる引数はです0関数は返される範囲(0-53または1-53)と、年の最初の週がどのように決定されるかを決定しますが、これは基本的な考え方です。

(ビジネス要件に応じて、はおそらくweek(order_date, 1)/2をしたい。第二引数、1、3と0から53までの週は月曜日に開始することを、範囲を指定し、年の最初の週は、最初の週ですかその年にもっと多くの日がありますが、もちろんビジネスで確認してください)

編集:DIV

関連する問題