Sqlserver
 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да заменя няколко знака в SQL?

  2. Помощ за SQL отчет - Изберете последната поръчка за всеки клиент

  3. Преминаване без курсор в SQL Server 2005

  4. Какво е IN логически оператор в SQL Server - SQL Server / TSQL урок, част 122

  5. Извикване на съхранена процедура с XML тип данни