15. marts 2004 - 12:25Der er
8 kommentarer og 1 løsning
SQL: JOIN problemer
Hej Exp !
Hvordan JOINer jeg 2 brugere ind i en query ??
Har en tabel; 'opgaver' med felterne 'oprettet_bruger_id' og 'ansvarlig_bruger_id' som ref'er til brugere i tabellen 'brugere' !
SELECT opgaver.id, opgaver.tekst, brugere.fornavn, brugere. efternavn, brugere.initialer FROM opgaver LEFT JOIN brugere ON opgaver.oprettet_bruger_id=brugere.id LEFT JOIN brugere ON opgaver.ansvarlig_bruger_id=brugere.id WHERE osv osv osv
Kan det lade sig gøre ?? Og hvordan skiller jeg de 2 brugere ad ??
Du skal bare bruge Brugere 2 gange med forskellig navngivning...
SELECT o.id, o.tekst, b1.fornavn, b1. efternavn, b1.initialer, b2.fornavn, b2. efternavn, b2.initialer FROM (opgaver AS o LEFT JOIN brugere AS b1 ON o.oprettet_bruger_id=b1.id) LEFT JOIN brugere AS b2 ON o.ansvarlig_bruger_id=b2.id
SELECT opgaver.id, opgaver.oprettet_timestamp, opgaver.oprettet_bruger_id, opgaver.ansvarlig_bruger_id, opgaver.titel, opgaver.tekst, opgaver.prioritet_id, opgaver.deadline, opgaver_prioritet_typer.type AS prioritet, ansvarlig_bruger.fornavn AS ansvarlig_fornavn, ansvarlig_bruger.efternavn AS ansvarlig_efternavn, ansvarlig_bruger.initialer AS ansvarlig_initialer, oprettet_bruger.fornavn AS oprettet_fornavn, oprettet_bruger.efternavn AS oprettet_efternavn, oprettet_bruger.initialer AS oprettet_initialer FROM opgaver LEFT JOIN opgaver_prioritet_typer ON opgaver.prioritet_id=opgaver_prioritet_typer.id LEFT JOIN brugere AS ansvarlig_bruger ON opgaver.ansvarlig_bruger_id=ansvarlig_bruger.id LEFT JOIN brugere AS oprettet_bruger ON opgaver.oprettet_bruger_id=ansvarlig_bruger.id WHERE....
Den finder 3 rækker... i alle 3 er ansvarlig_initialer/fornavn/efternavn med ! Men det er kun på den første at den finder oprettet_initialer/fornavn/efternavn..
SELECT opgaver.id, opgaver.oprettet_timestamp, opgaver.oprettet_bruger_id, opgaver.ansvarlig_bruger_id, opgaver.titel, opgaver.tekst, opgaver.prioritet_id, opgaver.deadline, opgaver_prioritet_typer.type AS prioritet, ansvarlig_bruger.fornavn AS ansvarlig_fornavn, ansvarlig_bruger.efternavn AS ansvarlig_efternavn, ansvarlig_bruger.initialer AS ansvarlig_initialer, oprettet_bruger.fornavn AS oprettet_fornavn, oprettet_bruger.efternavn AS oprettet_efternavn, oprettet_bruger.initialer AS oprettet_initialer FROM opgaver LEFT JOIN opgaver_prioritet_typer ON opgaver.prioritet_id=opgaver_prioritet_typer.id LEFT JOIN brugere AS ansvarlig_bruger ON opgaver.ansvarlig_bruger_id=ansvarlig_bruger.id LEFT JOIN brugere AS oprettet_bruger ON opgaver.oprettet_bruger_id=oprettet_bruger.id WHERE....
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.