Union haalt verkeerde veld op

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

- Ariën  -
Beheerder

- Ariën -

17/06/2013 16:58:20
Quote Anchor link
Ik heb deze query....

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
SELECT abbreviation, description
            FROM afkortingen
        WHERE abbreviation LIKE 'm%'
            UNION (
                SELECT afkorting human_abbreviation, naam description
                FROM materieel
                WHERE human_abbreviation LIKE 'm%'
            )
        ORDER BY abbreviation ASC

Echter deze lijkt niet het juiste veld van 'human_abbreviation' op te halen?

Ik heb dus deze tables:
afkortingen
met abbreviation en description

en
materieel
met o.a abbreviation en human_abbreviation

Nu koppelt hij blijkbaar steeds abbreviation in de UNION in plaats van human_abbreviation. Hoe komt dat? Of zie ik iets over het hoofd? Sta me al een kwartier op de query te staren, maar ik kom er niet uit.
Gewijzigd op 17/06/2013 16:59:35 door - Ariën -
 
PHP hulp

PHP hulp

17/11/2024 18:34:47
 
Erwin H

Erwin H

17/06/2013 17:48:18
Quote Anchor link
Als het is wat ik denk dan is er niets mis, maar verwacht je het verkeerde. Bij een union worden altijd de kolomnamen van de eerste query gebruikt voor de hele resultset. Dat je in de tweede query dus een alias gebruikt wordt simpelweg genegeerd. Alle records, in je hele resultset zullen twee velden hebben 'abbreviation' en 'description'. Dat is hoe je ze in de eerste query hebt genoemd.
 
- Ariën  -
Beheerder

- Ariën -

17/06/2013 17:54:54
Quote Anchor link
ik ga eens even kijken straks... thnx..
 
Aad B

Aad B

17/06/2013 20:53:27
Quote Anchor link
Je kan eens testen door wat tekst op te nemen, bijvoorbeeld de tabelnamen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
SELECT 'tabel afkortingen',abbreviation, description
  FROM afkortingen
 WHERE abbreviation LIKE 'm%'
 UNION
SELECT 'tabel materieel', afkorting human_abbreviation, naam description
  FROM materieel
 WHERE human_abbreviation LIKE 'm%'
Gewijzigd op 17/06/2013 21:13:03 door Aad B
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.