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

異なる値がSQLに来るまで繰り返されて空白の場合、列の値を1回だけ表示する方法

    あなたはできた このようにします:

    SELECT
        CASE WHEN ROW_NUMBER() OVER(PARTITION BY Category ORDER BY BudgetType) = 1 
        THEN Category ELSE NULL END AS 'Category Caption'
        , Category
        , BudgetType
    FROM yourTable
    ORDER BY Category, BudgetType
    

    しかし、ミカエルが述べたように、これは-ほとんどの場合-実際にはそれが行われるべき方法ではありません。たとえば、クライアントがカテゴリ内の並べ替えを変更したい場合は、各カテゴリ内の「最初の」行が異なるものになると考えてください。




    1. NpgSql接続文字列でApplicationNameを指定する方法

    2. [ハッカーランクのオリバンダーの在庫問題]によるグループ内の部分的(非集計列)の代替

    3. ユーザーごとのOracle設定デフォルトスキーム(セッションを変更しない)

    4. MINUSを使用する代わりに、Oracleで2つのカーソルを比較する