JOIN van twee tabellen waarin dezelfde column voorkomt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marco V

Marco V

15/11/2010 15:28:19
Quote Anchor link
Hallo,

Ik heb een vraag met betrekking tot een JOIN van twee tabellen waarin dezelfde column voorkomt, echter deze heeft in elke tabel een andere waarde.

Hoe kan ik deze aanroepen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
tabel klanten
+------+----+--------+
|
  ID  | NR |  NAAM  |
+------+----+--------+


tabel contactpersonen
+------+----+---------+----------+
|
  ID  | NR |  KLTID  | VOORNAAM |
+------+----+---------+----------+

?>


Ik doe dus een join van contactpersonen met klanten waarbij contactpersonen.KLTID = klanten.ID, maar het volgnummer bij klanten is heel iets anders dan het volgnummer bij contactpersonen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
SQL resultaat
+------+----+---------+----------+------+----+--------+
|
  ID  | NR |  KLTID  | VOORNAAM |  ID  | NR |  NAAM  |
+------+----+---------+----------+------+----+--------+

?>


Kan ik dit alsvolgt oplossen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
    // De opdracht voor de samengevoegde records uit "$tabel" (klanten) en "$tabelcontact" (contactpersonen)
    $SQL = "SELECT ".$tabelcontact.".*, ".$tabel.".ID, ".$tabel.".NR, ".$tabel.".TREF, ".$tabel.".NAAM, ".$tabel.".NAAM1 FROM ".$tabelcontact."
INNER JOIN "
.$tabel." ON ".$tabelcontact.".KLTID=".$tabel.".ID ORDER BY ".$tabelcontact.".ID ".$WHERE;
    
    $Resultaat = mysql_db_query ($DBNaam, $SQL, $Verbinding);

    // Maak een array met de gevonden resultaten
    $r=0;
    while ($Rij = mysql_fetch_array ($Resultaat) ) {
        $r++;
        $KCP[0][$r] = $Rij['contactpersonen.ID'];
        $KCP[$Rij['ID']]['KLTID']     = $Rij['contactpersonen.ID'];
        $KCP[$Rij['ID']]['KLTNR']     = $Rij['klanten.NR'];
        $KCP[$Rij['ID']]['KLTNAAM']     = $Rij['klanten.NAAM'];
        $KCP[$Rij['ID']]['KCPID']     = $Rij['contactpersonen.ID'];
        $KCP[$Rij['ID']]['KCPNR']     = $Rij['contactpersonen.NR'];
        $KCP[$Rij['ID']]['KCPVOORNAAM'] = $Rij['contactpersonen.VOORNAAM'];
    }

?>


Toevoeging op 15/11/2010 18:18:48:

Ik ben er al uit... de oplossing blijkt de toevoeging "as KLTNR" in de query waardoor je "NR" hernoemt naar "KLTNR".

Altijd handig voor wie dit ooit eens na leest, nietwaar?
Gewijzigd op 15/11/2010 15:29:43 door Marco V
 
Er zijn nog geen reacties op dit bericht.



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.