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

テーブルをランダムに並べますが、例外があります

    これを試してください:

    DECLARE @exceptionOrder uniqueidentifier = NEWID()
    
    SELECT ID, Category, Code
    FROM yourTable
    ORDER BY CASE WHEN Category = 'C' AND Code = 101 THEN @exceptionOrder ELSE NEWID() END
    

    これにより、同じ uniqueidentifier が割り当てられます 例外行に対して、ランダムな uniqueidentifier 残りの各行に移動し、それらの順に並べ替えます。



    1. SQLServerのメッセージ8116「引数データ型の日付が部分文字列関数の引数1に対して無効です」を修正しました

    2. PHP / MySQLの命名規則:キャメルケースとアンダースコア?

    3. 記載された値を持つMySQLでIN句を使用する

    4. mysqlクエリの実行に時間がかかりすぎる