2017-11-16 17 views
0

私はSQLテーブルを照会し、4週間の期間でグループ化されたデータを返す必要があるプロジェクトに取り組んでいます。週間のグループ化が使用可能です:SQL SQLでの4週間のグループ化 - シフト開始番号

SELECT (order_week_number + 3) DIV 4 

を4週間の期間に週番号をオンにするしかし、私はちょうど私がすなわち、7月にstatをする最初のグループ化をシフトする必要が出て見つけた:

enter image description here

私はこれをPHP if文を使って行うことができますが、私はSQLでこれをやろうとしているので、クエリの直後にデータを出力してそのまま使うことができます。

これはすべて可能ですが、私は明らかに期間7以降の現在のグループからマイナス6を得ることができますが、これはグループ化された期間7未満では機能しません。

答えて

0

OKは、誰にも似た何かをしたい場合には、私はこれは一緒に行くを取得するために管理:

SELECT CASE 
WHEN (order_week_number + 3) DIV 4 >= 7 
THEN ((order_week_number + 3) DIV 4) - 6 
ELSE ((order_week_number + 3) DIV 4) + 7 
END 

Anは、次の年の6月に現在の年の7月のクエリを制限しました。

これが間違っている/賢明でない場合は、私に修正してください!

関連する問題