28. februar 2010 - 22:58
Der er
3 kommentarer
Listning af data fra 2 tabeller
Jeg har følgende tabeller
Kunde:
kid, fornavn, efternavn
Product
id, kid, product, pris
Hver kunde kan kun have 3 produkter.
Er der mulighed for at få det skrevet ud som følgende
kid, fornavn, efter, product1, product2pris, product2, product2pris, product3, product3pris med 1 sql sætning (evt. en SP)
Mvh.
Thomas
01. marts 2010 - 00:20
#2
re 1)
SELECT kunde.kid,kunde.fornavn,kunde.efternavn,produkt.prodnavn,produkt.prodpris
FROM kunde JOIN produkt ON kunde.kid=produkt.kid
ORDER BY kunde.kid,produkt.pid;
re 2)
SELECT k.kid,k.fornavn,k.efternavn,p1.prodnavn,p1.prodpris,p2.prodnavn,p2.prodpris,p3.prodnavn,p3.prodpris
FROM ((kunde k LEFT JOIN produkt p1 ON k.kid=p1.kid)
LEFT JOIN produkt p2 ON k.kid=p2.kid AND p1.pid < p2.pid)
LEFT JOIN produkt p3 ON k.kid=p3.kid AND p2.pid < p3.pid
WHERE p1.pid = (SELECT MIN(pid) FROM produkt pp WHERE pp.kid=k.kid)
AND (p3.pid IS NULL XOR (SELECT COUNT(pid) FROM produkt pp WHERE pp.kid=k.kid)=3)
ORDER BY k.kid;