Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
2 Tabellen - Inhalt der zweiten Tabelle aus 1. ausschließen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
2 Tabellen - Inhalt der zweiten Tabelle aus 1. ausschließen


 
dreman
01-05-2005, 23:31 
 
Hallo!

Ich habe 2 mySQL Tabellen:

TABELLE empfaenger:
Splaten: id, mail
1, test1@gmx.de
2, test2@gmx.de
3, test3@gmx.de
8, test4@gmx.de

TABELLE geblockte_empfaenger:
Splaten: id, mail
8, test1@gmx.de
9, test4@gmx.de

So, ich möchte mir nun alle E-Mail Adresse ansehen, die in empfaenger enthalten sind abzüglich der Einträge in geblockte_empfaenger...

Das gewünschte Ergebnis wäre dann so:
2, test2@gmx.de
3, test3@gmx.de

Geht das mit einem verschachtelten Query?
Oder kann ich die Teilmengen einfach von einander abziehen?!
Habe schon ewig gesucht - aber nix passendes gefunden...

Danke im Voraus für die Hilfe!

Dreman

 
Wurzel
01-05-2005, 23:55 
 
lesen und verstehen:
http://www.php-resource.de/forum/showthread.php?s=&threadid=28292

 
dreman
02-05-2005, 07:40 
 
Erstmal danke für den Link.
Hatte ich bis jetzt noch nicht gefunden...

Habe mir die Beispiele angesehen - die verstehe ich auch - nur habe ich doch eine anderes Problem... oder?!

Ich habe ja keine Beziehung über eine ID...
Kann ja nur die Spalten "empfaenger.mail" und "geblockte_empfaenger.mail" vergleichen...

Habe es jetzt schon in verschiedenen Version getestet... Aber das gewünschte Erg immer noch nicht erhalten...

Danke für die Geduld...

 
dreman
02-05-2005, 07:47 
 
SELECT empfaenger.mail, geblockte_empfaenger.mail
FROM empfaenger, geblockte_empfaenger
WHERE geblockte_empfaenger.mail != empfaenger.mail

Das ergibt ja alle Tupel, bezogen auf die Zeile - brauche es aber gezogen auf die Spalte... = die geblockten Empfänger werden nicht ausgeschlossen! ....

:confused:

 
mrhappiness
02-05-2005, 07:55 
 
Ist es wirklich so schwer,alle zahlen auslesen, zu denen das quadrat nicht vorhanden istauf deinen fall anzuwenden?

Stell dir vor, die Zahlen wären die Mailadressen und die Quadrate die geblockten Mailadressen, dann wäre das doch eine geradezu verblüffende Ähnliuchkeit mit deiner Anforderung, nicht?

 
dreman
02-05-2005, 09:44 
 
Dank für den Post... Hatte es schon so probiert...

So:


SELECT
empfaenger.mail
FROM
empfaenger
LEFT JOIN geblockte_empfaenger USING(empfaenger.mail)
WHERE
geblockte_empfaenger.mail IS NULL


Ist dass jetzt OKAY?
Mir ist das leider irgendwie noch nicht ganz klar?!

 
mrhappiness
02-05-2005, 09:51 
 
USING(mail) sollte besser sein

 
dreman
02-05-2005, 11:47 
 
Okay, also so:

SELECT
*
FROM
empfaenger
LEFT JOIN geblockte_empfaenger USING(mail)
WHERE
geblockte_empfaenger.mail IS NULL


(Mein SELECT war noch nicht okay!)

Jetzt ist das Prob gelößt!

1000-Dank!
dreman

:cool:


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:45 Uhr.