Avatar billede el_morten Nybegynder
19. juni 2006 - 16:29 Der er 1 kommentar og
2 løsninger

Trække data ud fra flere tabeller.

Hej Jeg har problemer med noget sql-udtræk. Er der nogen der kan hjælpe? Det er noget udtræk fra flere tabeller på én gang.

Jeg har lavet et billede så I (forhåbentligt) bedre kan forstå hvad jeg mener:
http://www.lundmorten.dk/exp/detviljeg.jpg

Selve spørgsmålet står på billedet.
Avatar billede Slettet bruger
19. juni 2006 - 16:58 #1
Dette er ikke testet - desuden har jeg ikke arbejdet i MySQL i lang tid (arbejder for tiden i access), men det virker måske alligevel - du kan jo prøve :P.

Hvis du vil kunne selecte ud fra category_name, kan du bruge denne forespørgsel:

SELECT [Cases].* FROM ([Cases] INNER JOIN [Projects] ON [Cases].[case_id] = [Projects].[case_id]) INNER JOIN [Category] ON [Category].[category_id] = [Projects].[category_id] WHERE [category_name] = 'category_name'

Hvis du som beskrevet kun vil være i stand til at selecte ud fra category_id, kan du nøjes med denne forespørgsel:

SELECT [Cases].* FROM [Cases] INNER JOIN [Projects] ON [Cases].[case_id] = [Projects].[case_id] WHERE [category_id] = 1
Avatar billede hjochums Nybegynder
21. juni 2006 - 08:21 #2
Jeg ville ikke bruge JOIN...

SELECT c.*
FROM cases c, projects p
WHERE c.case_id = p.case_id AND p.category_id = 1

Husk index med p.case_id og p.category_id :)
Avatar billede el_morten Nybegynder
21. juni 2006 - 09:46 #3
Jeg fik også hjælp fra anden side end eksperten og det er vist noget lig din version hjochums:
SELECT cases.* FROM cases, projects WHERE projects.category_id=1 && cases.case_id = projects.case_id
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester