FAQ |
Kalender |
|
![]() |
#1 | |||
|
||||
Mycket flitig postare
|
Jag har ett återkommande problem särskilt när jag joinar ihop tabeller. Hoppas nu att någon klok man eller kvinna här har en lösning… (Jag har säkert bara missat någon uppenbar lösning).
Exempelvis: Jag har en tabell med bilmodeller, t ex Volvo, Saab, etc. Varje bil har ett antal egenskaper t ex baklucka, taklucka, kombi. Om jag gör en tabell som t ex: CREATE TABLE bilar (id INT, biltyp VARCHAR, delar SET('baklucka','taklucka','kombi')) så kan jag lätt hämta att biltypen volvon har 'baklucka,taklucka' Om jag däremot har en normaliserad (relationell) databas så får jag problemet att när jag joinar ihop biltyp och egenskaper så får jag raderna volvo, taklucka volvo, baklucka Vad jag skulle vilja är något liknande: SELECT bil, CONCAT(SELECT delar FROM egenskaper) FROM biltyper som skulle ge mig volvo, taklucka;baklucka Antingen så är jag inne på helt fel väg eller så finns det någon smidig lösning på problemet, dvs någon bra query som jag missat (jag kan förstås först söka bilmodellen i en query och sedan alla som hör till i en annan med då behöver jag ju göra 51 queries för att visa 50 bilar, vore bra om det gick att lösa smidigare). Vad jag vill göra är alltså att ställa en query som ger mig en sträng med data från flera rader i en databastabell - det måste väl gå att göra (utan temporary tabeller etc)? (ursäkta att jag har framställt exemplet så korkat men jag har försök göra det så enkelt som möjligt för att inte komplicera onödigt) |
|||
![]() |
![]() |
Svara |
|
|