Avatar billede a_c Nybegynder
22. maj 2001 - 14:34 Der er 7 kommentarer og
1 løsning

Første record

Hejsa
Hvordan for jeg fat i den første record i en tabel i MS SQl.

mvh A_C
Avatar billede slash Nybegynder
22. maj 2001 - 14:39 #1
select min(id) from tabel
Avatar billede ldanielsen Nybegynder
22. maj 2001 - 14:47 #2
Rækkefølgen i en tabel er ikke en endelig defineret ting. Du kan ikke regne med at posterne kommer ud i samme rækkefølge hver gang du laver en SELECT, med mindre du angiver en ORDER BY:

SELECT MIN(Kolonnenavn) FROM Tabelnavn ORDER BY Kolonnenavn
Avatar billede a_c Nybegynder
22. maj 2001 - 14:51 #3
tak
Avatar billede mwittrock Nybegynder
22. maj 2001 - 14:52 #4
a_c,

der findes hverken en \"første\" eller en \"sidste\" række i en tabel, rækkerne er pr. definition uordnede. Du kan derimod f.eks. vælge den række, hvor den primære nøgle er lig den mindste af værdierne indeholdt i den primære nøgle.

Med det sagt, kan du f.eks. åbne en CURSOR sorteret som du ønsker, og kalde FETCH én gang, eller du kan bruge SELECT TOP 1 .... ORDER BY [hvad du vil sortere efter].
Avatar billede mwittrock Nybegynder
22. maj 2001 - 14:57 #5
Bemærk at værdien af MIN(Kolonnenavn) i

SELECT MIN(Kolonnenavn) FROM Tabelnavn ORDER BY Kolonnenavn

kun med sikkerhed er brugbar i et WHERE kriterie, hvis Kolonnenavn er en primær eller kandidat nøgle (UNIQUE).
Avatar billede mwittrock Nybegynder
22. maj 2001 - 15:04 #6
...og at ORDER BY ingen mening giver sammen med SELECT MIN() ...

Skal nok tie stille nu :-)
Avatar billede ldanielsen Nybegynder
22. maj 2001 - 16:43 #7
Du har da fuldstændig ret, sikke noget sludder jeg fik sagt.
Det jeg mente var noget med

SELECT TOP 1 * FROM Tabelnavn ORDER BY Kolonnenavn

Hvilket giver den ønskede record.

SELECT MIN(Kolonnenavn) FROM Tabelnavn

- besvarer ikke spørgsmålet, da den ikke giver en record med alle kolonner.

Men vi fik fastslået at ORDER BY er nødvendig hvis man vil have styr på rækkefølgen.

Hvad mener du med at MIN kun kan bruge på KEY eller UNIQUE? Hvis der er to ens, kan man ikke være sikker på rækkefølgen, det er klart, er det det du mener?
Avatar billede ldanielsen Nybegynder
22. maj 2001 - 16:44 #8
Mere sludder! Der er ingen rækkefølge i en MIN, da den kun giver én record.

Jeg skal vist have en kop kaffe mere :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester