Come posso mostrare il numero di righe in una tabella in modo che quando viene aggiunto un nuovo record il numero che rappresenta la riga aumenti e quando un record viene cancellato il numero viene aggiornato di conseguenza?
Per essere più chiari, supponiamo di avere una semplice tabella come questa:Come posso assegnare un numero a ciascuna riga in una tabella che rappresenta il numero del record?
ID int (chiave primaria) Nome varchar (5)
L'ID è impostato per essere incrementato da solo (usando specifica identità) in modo che non può rappresentare il numero di riga (record) in quanto se devo per esempio 3 record come:
NOME ID
1 Alex
2 Scott
3 Sara
e io cancellare Alex e Scott e aggiungere un nuovo record sarà:
3 Sara
4 Mina
Quindi, fondamentalmente sto cercando una soluzione sql-side per fare questo in modo che Non cambio nient'altro nel codice sorgente in più posti.
Ho provato a scrivere qualcosa per portare a termine il lavoro ma non funziona. Eccolo:
SELECT COUNT(*) AS [row number],Name
FROM dbo.Test
GROUP BY ID, Name
HAVING (ID = ID)
Questo dimostra come:
row number Name
1 Alex
1 Scott
1 Sara
mentre io voglio che per ottenere mostrato come:
row number Name
1 Alex
2 Scott
3 Sara
Cosa hai provato e dove vuoi mostrare no di righe? – DevelopmentIsMyPassion
Ho aggiornato la domanda. Voglio mostrare i numeri quando uso i comandi select.in modo che ogni volta che seleziono i risultati abbiano una normale numerazione che rappresenta i record. – Breeze
Non riesci a mostrare l'ID generato nella colonna del numero di riga? Non ha capito che cosa è l'uso del conteggio (*) – DevelopmentIsMyPassion