18. marts 2010 - 16:21Der er
7 kommentarer og 1 løsning
join table ud fra et felt i anden table
jeg er ved at være ude i noget lidt kryptisk hvor jeg skal lave en JOIN af en table ud fra hvad et andet felt indeholder
eks.
SELECT tbl.type FROM tbl
vil så joine en table ud fra hvad tbl.type giver.. hvis tbl.type er et lige tal skal table "tbl_lige" joines og hvis det er ulige skal "tbl_ulige" joines, men hvordan!?
SELECT tbl.type FROM tbl LEFT JOIN tbl_lige ON tbl_lige.felt=tbl.felt
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
ja, den er lidt kryptisk.. prøver også at finde en bedre løsning
måske du kan hjælpe mig med strukturen? :)
er ved at lave et lille økonomisystem, og problemet ligger i modulerne (kredit, debit, lager osv)
pt har jeg en tabel med kontoer, en med posteringer og så en tabel med hvert modul
i princippet kunne jeg jo lægge alle moduler sammen i samme tabel hvilket også gør det hele lidt mere ligtil, men hvert modul har jo ikke de samme felter i tabellen og det er her det begynder at blive en smule kryptisk
Det med ulige/lige kan jeg ikke greje, men ellers er kunne du jo lægge det, der er fælles for modulerne i een tabel, og kun det der afviger i andre. Så får du vel ikke brug for den kryptiske select-sætning?
Du har et felt i den "fælles" tabel, der siger hvilken type det er. Man kan ikke bruge det til at joine på andre tabeller, men det har man jo heller ikke brug for.
Hvis du har de fælles ting i een tabel, har du ikke brug for at joine, hvis du kun skal bruge de fælles ting.
Har du brug for mere end de fælles ting, dvs. noget fra een af de andre tabeller, har du allerede valgt hvilken type det skal være og hvilken tabel, der skal joines med. Du skal ikke joine "ud fra hvad et andet felt indeholder".
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.