PDA

Vollständige Version anzeigen : Domains herausfinden mit einem SELECT?


Coyu
26.09.2005, 09:43
Hey Leute,
ich habe eine Email-Tabelle EMAILS und habe eine andere Tabelle namens DOMAINS. Ich möchte jetzt alle diejenigen Mails aus EMAILS löschen, die von der Domain her in der Tabelle DOMAINS sind.
Also z.B.:
Tabelle EMAILS:
123@hallo.de
xyz@huhu.de
fgh@jaja.de

Tabelle DOMAINS
huhu.de

Dann wärde die Mailadresse "xyz@huhu.de" betroffen.

Mit einer Tabelle BLACKLIST (kompletter Schlüsselvergleich) kann ich die Mails mit einem klassischen SELECT löschen:

SELECT *
FROM EMAILS
WHERE [EMAILS.email] in (Select BLACKLIST.email from BLACKLIST);

Aber ich schaffe es nicht, den LIKE-Befehl anzuwenden.
Sprich: Suche mir alle diejenigen Mailadressen aus EMAILS heraus, deren Endungen mit den Einträgen von DOMAINS enden.

Wer kann mir da helfen?

Vielen Dank im voraus!

Coyu

stpimi
26.09.2005, 10:26
Du kannst Dir mit Hilfe von InStr und Mid den Teil rechts vom @ in ein eigenes Feld herausziehen und dann diesen Wert mit dem Subselect einschränken. In einer neuen Spalte Deiner Abfrage im Fled Feldname:

Domain: Mid(EMail;Instr(Email;"@")+1)

Ungetestet!