Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zamów stolik losowo, ale z wyjątkami

Spróbuj tego:

DECLARE @exceptionOrder uniqueidentifier = NEWID()

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

Spowoduje to przypisanie tego samego uniqueidentifier do wierszy wyjątków losowy uniqueidentifier do każdego z pozostałych rzędów, a następnie uporządkuj je według nich.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak stworzyć bazę danych w SQL Server

  2. Jak zmienić typ danych kolumny w SQL Server?

  3. Jak wyłączyć przechwytywanie zmian danych (CDC) w bazie danych w programie SQL Server — samouczek dotyczący programu SQL Server

  4. Importuj/eksportuj bazę danych za pomocą SQL Server Server Management Studio

  5. Wyrażenie GROUP-BY musi zawierać co najmniej jedną kolumnę, która nie jest odniesieniem zewnętrznym