Avatar billede nickl87 Nybegynder
24. april 2008 - 15:26 Der er 5 kommentarer og
2 løsninger

SQL søg i to tabeller samtidig.

Hej,

jeg har to tabeller i mysql:

Support(id, title, description);

og

Answers(id, id_support, title, description);

Jeg kunne nu godt tænke mig slå disse to tabeller sammen til f.eks. følgende:

union(id, title, description);

Alt data som er i de to tabeller skal være repræsenteret i den nye tabel. Synes snart jeg efterhånden har prøvet alt, så håber i har nogle forslag.

mvh.
Nick
Avatar billede jakobdo Ekspert
24. april 2008 - 18:28 #1
Jeg ved ikke om du kunne lave:

SELECT id, title, description FROM tabel_1 WHERE noget = $søg
UNION
SELECT id, title, description FROM tabel_2 WHERE noget = $søg
Avatar billede nickl87 Nybegynder
28. april 2008 - 11:16 #2
Har prøvet følgende, som dog giver en fejl:

(
SELECT Id_support AS id, Title_danish_support AS title, Description_danish_support AS description
FROM `support`
WHERE 1
)
UNION (

SELECT Id_support AS id, Title_danish_support_answers AS title, Description_danish_support_answers AS description
FROM support_answers
WHERE 1
)
mvh.
Nick
Avatar billede jakobdo Ekspert
28. april 2008 - 11:26 #3
Prøv:

SELECT Id_support AS id, Title_danish_support AS title, Description_danish_support AS description FROM `support`
UNION
SELECT Id_support AS id, Title_danish_support_answers AS title, Description_danish_support_answers AS description FROM support_answers
Avatar billede nickl87 Nybegynder
28. april 2008 - 11:30 #4
Får stadigvæk en mysql fejl:

SELECT Id_support AS id, Title_danish_support AS title, Description_danish_support AS description
FROM `support`
UNION SELECT Id_support AS id, Title_danish_support_answers AS title, Description_danish_support_answers AS description
FROM support_answers
LIMIT 0 , 30

MySQL said: Documentation
#1271 - Illegal mix of collations for operation 'UNION'

mvh.
Nick
Avatar billede nickl87 Nybegynder
28. april 2008 - 12:30 #5
Har fundet fejlen :-) Viste sig at være et encoding problem, idet den ene tabel havde en type encoding og den anden havde anden type encoding.

Havde også meget svært ved at forstå hvorfor et ganske almindeligt union ikke virkede :-)

Ellers tak for hjælpen Jakobdo

mvh.
Nick
Avatar billede jakobdo Ekspert
28. april 2008 - 13:45 #6
Svar!
Avatar billede jakobdo Ekspert
28. april 2008 - 21:47 #7
Takker for point.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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