sql >> データベース >  >> RDS >> Sqlserver

シーケンスに基づいて結果をグループ化するためのSQLクエリ

    WITH numbered AS (
      SELECT
        ID, Seq, Amt,
        SeqGroup = ROW_NUMBER() OVER (PARTITION BY ID ORDER BY Seq) - Seq
      FROM atable
    )
    SELECT
      ID,
      Start = MIN(Seq),
      [End] = MAX(Seq),
      TotalAmt = SUM(Amt)
    FROM numbered
    GROUP BY ID, SeqGroup
    ORDER BY ID, Start
    ;
    


    1. 2つの結果セット間の類似性を比較する

    2. InnoDBのパフォーマンスの調整

    3. この左結合が1つのレコードのみを返すのはなぜですか?

    4. 最も貴重な所有物を追跡するためのデータモデル