[mysql] 2 tabellen vergleichen und unstimmigkeiten anzeigen !

fla5hi

Mitglied
Moin Moin,

ich habe eine frage!!

ich habe eine datenbank

dort sind 2 tabellen mit jeweils 1 feld

einmal plz_1 und plz_2

ich möchte jetzt plz1 mit plz2 vergleichen

ich habe jetzt eine PLZ 66123 ( das wäre saarbrücken)

das script checkt ja alle einträge..

gibt es für eine PLZ keinen eintrag bzw er findet nicht das passende gegenstück sollte mir das script dies ausgeben!

also nur wo er kein gegenstück findet!


ich stehe auf dem schlauch und habe keine ahnung wie ich das umsetzen könnte!
 
Hm. Ich kanns jetzt gerade nicht testen, aber probier mal folgendes:
SQL:
SELECT * FROM `tabelle_2` WHERE `tabelle_2`.`plz` NOT IN `tabelle_1`.`plz`
 
sers danke für deinen tipp aber ich krieg da einen fehler warum?

PHP:
<?php
include ('db-connect.php');


$sgeo="SELECT * FROM geo WHERE institutionen .i_plz NOT IN geo . g_plz";
$qgeo=mysql_query($sgeo) or die("$sgeo<BR><BR>".mysql_error());
$mgeo=mysql_fetch_array($qgeo);
?>

<?
echo $sgeo;
?>


in der tabelle geo stehen die richtigen (g_plz). und diese möchte ich vergleichen mit institutionen (i_plz)

dh.

wenn die institutionen plz nicht mit der von geo übereinstimmen muss er das ergebniss ausgeben im prinzip alle.
 
1.) Bitte immer den Fehler posten,
2:
PHP:
$sgeo="SELECT * FROM `geo` WHERE `geo`.`g_plz` NOT IN `institutionen`.`i_plz`"; // Da dürfen keine Leerzeichen bei den Punkten sein

Nachtrag
Wenn du prüfen willst, ob die Plz von der Institutionentabelle korrekt ist, dann muss die Query lauten:
SQL:
SELECT * FROM `institutionen` WHERE `institutionen`.`i_plz` NOT IN `geo`.`plz`
/* Selektiere alle Institutionen, deren Plz nicht in Geo */
 
Zuletzt bearbeitet:
hier der fehler mit dem neuen code

SELECT * FROM `geo` WHERE `geo`.`plz` NOT IN `institutionen`.`i_plz`

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'institutionen`.`i_plz`' at line 1


(geo) das feld ist plz und nicht g_plz mein fehler.. habs auch geändert dennoch dieser error
 
SQL:
SELECT
    *
FROM
    `institutionen`
WHERE
    `institutionen`.`i_plz` NOT IN (
        SELECT
            `plz`
        FROM
            `geo`
    )
;

Siehe IN und Subqueries.

Flashi: Bitte benutze die angebotenen bbCodes um Queries und Codezeilen formatieren zu lassen. Für MySQL eignet sich [code=sql]Querystring[/code]
 
PHP:
<?php
include ('db-connect.php');


$sgeo="SELECT * FROM `institutionen` WHERE `institutionen`.`i_plz` NOT IN (SELECT `plz` FROM `geo`);   
$qgeo=mysql_query($sgeo) or die("$sgeo<BR><BR>".mysql_error());
$mgeo=mysql_fetch_array($qgeo);
?>


<?
echo $sgeo;
?>

das jetzt die abfrage aber es kommt immer noch ein fehler...


Code:
Parse error: syntax error, unexpected T_VARIABLE in /home/www/web38/html/test.php on line 6
 

Neue Beiträge

Zurück