Avatar billede moreless Nybegynder
20. marts 2002 - 14:18 Der er 18 kommentarer og
1 løsning

3 nyeste added i databasen

Hej

Jeg har en database inholdende en masse film.. jeg vil gerne lave et udtræk af de 3 nyeste added film i databasen..

Kan mySQL selv regne ud hvilke der er nyeste added eller skal jeg oprette en tabel som hedder "dato" ? som jeg sortere efter.. og hvordan gør jeg sådan at den kun viser de _3_ nyeste?

/moreless
Avatar billede htx98i17 Professor
20. marts 2002 - 14:20 #1
har du ikke et id felt i tabellen... i så fald kan du oprette et sådant med autoincrement...
Avatar billede moreless Nybegynder
20. marts 2002 - 14:21 #2
nåårh jo.. så skal jeg blot vide hvordan at jeg kun henter de 3..
Avatar billede htx98i17 Professor
20. marts 2002 - 14:22 #3
SELECT * FROM tabel ORDER BY id LIMIT 3
Avatar billede moreless Nybegynder
20. marts 2002 - 14:31 #4
takker.. og så lige DESC så er den der.. tak..
Avatar billede moreless Nybegynder
20. marts 2002 - 14:31 #5
det var jo nemt nok... hvis du vil have nogle points må du lave et svar :-)
Avatar billede htx98i17 Professor
20. marts 2002 - 14:32 #6
np
Avatar billede rentondk Nybegynder
20. marts 2002 - 14:38 #7
Burde man ikke lave et sådan udtræk vha. DATE felt, hvor man indsætter CURRENT_DATE ved indsættelse ?
Avatar billede htx98i17 Professor
20. marts 2002 - 14:40 #8
der er mange metoder at gøre det på. I dette tilfælde vil resultatet være det samme...
Avatar billede moreless Nybegynder
20. marts 2002 - 14:45 #9
Id er jo klart det nemmeste...
Avatar billede rentondk Nybegynder
20. marts 2002 - 14:51 #10
Jeg har en tabel med artikler til min hjemmeside, og den nyeste artikel er ikke nødvendigvis den med det største ID ... og ja, jeg bruger auto_increment.

At lave en kronologisk oversigt ud fra id'erne lyder som noget fusk. Man kunne f.eks. også forvente, at man senere fik lyst til at vise den dato, som en film blev tilføjet.
Avatar billede moreless Nybegynder
20. marts 2002 - 14:57 #11
det er skam ikke fusk.. den nyste vil da altid have nave det højeste id...
Avatar billede rentondk Nybegynder
20. marts 2002 - 14:57 #12
Det kan også være "nemmest" at bruge f.eks. goto, break eller lignende, når man programmere, men det er ikke god programmering.

Det med at bruge ID'erne er ikke godt design, og når det kræver så lidt for at gøre det godt ... men okay, det er sikkert bare mig :o)
Avatar billede htx98i17 Professor
20. marts 2002 - 14:58 #13
som sagt det kan gøre på mange måder.. Jeg opretter altid et id felt da det oftest er meget rart at arbejde med... så man kunne jo oprette både et id felt og et dato felt.

At du har været ude for at den nyeste post ikke er det højeste id, lyder så ret mærkeligt...men man kan jo tvinge posten til et lavere id...
Avatar billede rentondk Nybegynder
20. marts 2002 - 15:00 #14
Ja ... auto_increment er maks + 1 ... men jeg kan nu engang se i min database, at det ikke altid holder. Id'erne står ved siden af datoen, så det er rimelig let at se :O)
Avatar billede htx98i17 Professor
20. marts 2002 - 15:03 #15
Hvis du har poster med id'erne... 1,2,3,4,5,6,7,8
og slette eksempelvis id 6,7 og 8
så vil den næste autoincrement starte ved 9, og dermed får du et hul i rækken...
Avatar billede rentondk Nybegynder
20. marts 2002 - 15:10 #16
Præcis, som jeg nævnte: Maks + 1. Når der skal vælges et nyt ID tager den bare det maksimale ID og lægger en til.

Jeg har aldrig fundet ud af, om det skyldes en fejl fra min side ... og det gør det sikkert.
Avatar billede htx98i17 Professor
20. marts 2002 - 15:13 #17
ja altså sådan som jeg lige forklarede... og det er meningen.
Derved får du osse altid den nyeste post med højeste id, hvis du lader mysql selv lave id'erne...
Avatar billede rentondk Nybegynder
20. marts 2002 - 15:18 #18
Okay, ingen mening at diskutere mere. Pointen var bare, at det er dårligt design.
Avatar billede moreless Nybegynder
20. marts 2002 - 16:07 #19
Jeg har oprettet et spørgsmål mere :-)
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