Avatar billede jfl Nybegynder
06. november 2002 - 16:22 Der er 4 kommentarer og
1 løsning

Select 2 af hver

Hvis jeg har en tabel med id og status kan jeg så via 1 SELECT få 2 rækker med status=1 og 2 rækker med status=2 ?
Avatar billede kennie_nm Nybegynder
07. november 2002 - 10:19 #1
det er ikke helt klart for mig hvad du mener...

hvis MySQL understøtter UNION kan du lave

SELECT id, 1
FROM ...
UNION
SELECT id, 2
FROM ...
Avatar billede proaccess Nybegynder
08. november 2002 - 14:16 #2
Lav en tabel (ved navn tblDummy) med et felt (navn: tal, type: Int)...
Indsæt 2 records (1 og 2)

Brug derefter:
SELECT a.id, a.status, b.tal FROM dinTabel a, tblDummy b;
Avatar billede jfl Nybegynder
18. november 2002 - 11:55 #3
Det ser ud til at virke med denne:
SELECT id, status FROM questions WHERE status = 1 LIMIT 3 UNION SELECT id, status FROM questions WHERE status = 3 LIMIT 6

Hver LIMIT skal have den værdi denne skulle have haft som enkeltstående SELECT, plus de foregående SELECT's LIMIT.

Ser det rigtigt ud?

UNION syntax: http://www.mysql.com/doc/en/UNION.html
Avatar billede jfl Nybegynder
18. november 2002 - 14:27 #4
Ved brug af paranteser er det lidt mere logisk:
(SELECT id, status FROM questions WHERE status = 1 LIMIT 3) UNION (SELECT id, status FROM questions WHERE status = 3 LIMIT 3)
Avatar billede jfl Nybegynder
18. marts 2003 - 10:58 #5
lukker
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