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

SQL per generare il numero di riga nei risultati di una query

Dipende dal database che stai utilizzando. Un'opzione che funziona per SQL Server, Oracle e MySQL:

SELECT ROW_NUMBER() OVER (ORDER BY SomeField) AS Row, *
FROM SomeTable

Modifica SomeField e SomeTable è in base alla tabella specifica e al campo pertinente in base al quale ordinare. È preferibile che SomeField sia univoco nel contesto della query, naturalmente.

Nel tuo caso la query sarebbe la seguente (Faiz ha prima creato una query del genere):

SELECT ROW_NUMBER() OVER (ORDER BY client_name) AS row_number, client_name
FROM (SELECT DISTINCT client_name FROM deliveries) TempTable

Penso che non funzionerà per SQLite (se qualcuno può correggermi qui te ne sarei grato), non sono sicuro di quale sia l'alternativa lì.