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

連続するレコードをグループ化するためのOracleSQLクエリ

    このクエリを試してください:

    SELECT line_no,
           amount,
           narration,
           SUM( x ) OVER ( ORDER BY line_no
                           ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW 
           ) as calc_group
    FROM (
      SELECT t.*,
             CASE lag( narration ) OVER (order by line_no ) 
             WHEN narration THEN 0
             ELSE 1 END x
      FROM test t
    
    )
    ORDER BY line_no
    

    デモ-> http://www.sqlfiddle.com/#!4/6d7aa / 9




    1. mysqlクエリPHP:特定のアイテムを最初にしたいので、クエリを変更して表示するアイテムの数を変更できます

    2. SQL 2008でIF条件が満たされた列にデフォルト値を設定する

    3. Oracle用のEntityFramework互換プロバイダーの比較?

    4. PHP mysqlが存在しない場合は、データベースを作成します