Ceci n'est pas vraiment une réponse à la question. C'est juste que je me demandais si %%physloc%%
pouvait être utilisé pour cela.
Mais non.
Vous avez vraiment besoin d'un champ date-heure de création, ou d'un champ rempli séquentiel pour cela.
C'est le test:
create table Test (id int identity(1,1) primary key, var1 varchar(20), creation_date datetime default SYSDATETIME());
declare @T table (c char(1));
insert into @T (c) values
('A'),('B'),('C'),('D'),('E'),('F'),('G'),('H'),('I'),('J'),('K'),('L'),('M'),('N'),('O'),('P'),('Q'),('R'),('S'),('T'),('U'),('V'),('W'),('X'),('Y'),('Z');
insert into Test (var1) select concat(t1.c,t2.c,t3.c) as text from @T t1, @T t2, @T t3 order by 1;
select top 10 *, %%physloc%% as physloc from Test order by %%physloc%% desc;
select top 10 * from Test order by id desc;
Les 2 dossiers différents sélectionne le retour, donc %%physloc%%
ne peut pas être utilisé pour cela.
Non. Il n'y a pas de commande dans un tableau. – dnoeth
Il est pratiquement impossible d'avoir une table avec 100 000 000 000 000 000 lignes. Si vous le faites, vous devriez avoir un assez bon DBA que vous pouvez parler. –
Oui. Compléter BS. même si chaque rangée était minuscule à 14 octets ce qui serait 1400 pétaoctets de stockage pour la table. –