sql >> Database teknologi >  >> RDS >> Sqlserver

Bestil bord tilfældigt, men med undtagelser

Prøv dette:

DECLARE @exceptionOrder uniqueidentifier = NEWID()

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

Dette vil tildele den samme uniqueidentifier til undtagelsesrækkerne en tilfældig uniqueidentifier til hver af de øvrige rækker, og bestil derefter efter dem.



  1. Mysql localhost !=127.0.0.1?

  2. Mangler mysql.h og prøver at finde mysql-devel

  3. Java Oracle-undtagelse - det maksimale antal udtryk på en liste er 1000

  4. Sidste indeks for en given understreng i MySQL