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

Jak sortować w kolejności wprowadzonej w SQL Server?

Oto podejście in-line

Przykład

Declare @List varchar(max)='212345, 312345, 145687, 658975, 256987, 365874, 568974, 124578, 125689'

Select A.AccountNumber 
      ,A.EndDate
 From  Accounts A
 Join (
        Select RetSeq = Row_Number() over (Order By (Select null))
              ,RetVal = v.value('(./text())[1]', 'int')
        From  (values (convert(xml,'<x>' + replace(@List,',','</x><x>')+'</x>'))) x(n)
        Cross Apply n.nodes('x') node(v)
      ) B on A.AccountNumber = B.RetVal
 Order By B.RetSeq
RetSeq  RetVal
1       212345
2       312345
3       145687
4       658975
5       256987
6       365874
7       568974
8       124578
9       125689


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sprawdzanie poprawności adresu e-mail w serwerze sql 2008?

  2. Jak znaleźć domyślne ograniczenie przy użyciu INFORMATION_SCHEMA?

  3. Wstaw .NET SQL wolno w porównaniu z JDBC? (JDBC 4x szybciej)

  4. Jak znaleźć zduplikowane rekordy za pomocą klauzuli Group by i Having w SQL Server — SQL Server / TSQL Tutorial, część 132

  5. Plusy i minusy TRUNCATE vs DELETE FROM