は私の簡体コードです:例外を指定してGROUP BYを実行するにはどうすればよいですか?ここ
SELECT
a.user_id as User_ID,
min(b.a_day) as Date_from,
max(b.a_day) as Date_to,
c.code as ID
FROM a, b, c
WHERE
a_day > (day, -15, getdate())
GROUP BY
a.user_id,
c.code
クエリは、次のような出力が得られます。
User ID date_from date_to id
1234567 2016-06-13 2016-06-13 B
1234567 2016-06-17 2016-06-17 A
12345672016-06-18 2016-06-18 A
1234567 2016-06-19 2016-06-19 A
1234567 2016-06-20 2016-06-20 A
1234567 2016-06-21 2016-06-21 C
1234567 2016-06-22 2016-06-22 C
1234567 2016-06-23 2016-06-23 D
私はこのような何か必要があります:私は分()とmaxを(使用する場合
User ID date_from date_to id
1234567 2016-06-13 2016-06-13 B
1234567 2016-06-17 2016-06-20 A
1234567 2016-06-21 2016-06-22 C
1234567 2016-06-23 2016-06-23 D
を)関数をグループ化すると、すべてのレコードが正常に集計されますが、毎日同じIDで日付のみを集計する必要があります。
アイデア?
ありがとうございます。
あなたはGROUP BY
句で
CASE EXPRESSION
を使用して、条件付きのグループでそれを行うことができます
は、サンプル表データを追加します。 (それは指定された結果を与えます) – jarlh