Visa ett inlägg
Oläst 2007-09-28, 11:19 #1
swans avatar
swan swan är inte uppkopplad
Medlem
 
Reg.datum: Oct 2004
Inlägg: 216
swan swan är inte uppkopplad
Medlem
swans avatar
 
Reg.datum: Oct 2004
Inlägg: 216
Givet är en sorterad lista med produkt id:n (2343, 4352, 6543, 3245). Nu vill jag på ett snabbt sätt få fram produktnamnet för dessa id:n från en mysql databas. resultatet skall vara sorterat på samma sätt som i ursprungslistan. id är primärnyckel (och har därmed ett unikt index).

Vilket är snabbast?

1) loopa igenom listan och göra en select för varje produkt. dvs fyra (4) selects, en för varje produkt.
Exempel: "SELECT ID, TITLE FROM PRODUCTS WHERE ID = 3243"

2) en (1) select där (id = 2343 OR id = 4352 OR id = 6543 OR id = 3245)
Exempel: "SELECT ID, TITLE FROM PRODUCTS WHERE (ID = 2343 OR ID = 4352 OR ID = 6543 OR ID = 3245)"

3) annat?

Det som är viktigt är alltså att det går så snabbt som möjligt och att listan är sorterad enligt ursprungslistan.
swan är inte uppkopplad   Svara med citatSvara med citat