Gerald: MySQL Abfrage will nicht so wie ich, wer weiss Rat?

Beitrag lesen

Hallo!

Ich stehe mit einer SQL auf dem Schlauch, wäre super, wenn mir hier jemand weiterhelfen könnte.

Folgende SQL ist die Basis (und funktioniert soweit)

SELECT

user.company,
 user.last_name,
 user.first_name,
 user.email,
 user.city

FROM

user

WHERE

user.customer = 1
 AND user.newsletter = 0
 AND user.last <= '2007-01-10'

Was sie tut: es werden alle Kunden ausgegeben, die keinen Newsletter wollen und nicht mehr nach dem 01.10. auf unserer Seite waren.

Nun möchte ich dies erweitern, es sollen auch die Kunden rausgefiltert werden, die zwischenzeitlich was gekauft haben, das steht in Tabelle "sold".

Die entsprechenden Käufe bekäme ich so:

SELECT

sold.*

FROM

sold

WHERE

sold.create >= '2007-01-10'

So, nun will ich das natürlich verbinden und dachte an etwas wie:

SELECT

user.company,
 user.last_name,
 user.first_name,
 user.email,
 user.city

FROM

user,
 sold

WHERE

user.customer = 1
 AND user.newsletter = 0
 AND user.last <= '2007-01-10'
 AND user.id != sold.userID
 AND sold.create >= '2007-01-10'

Nun könnt Ihr Euch denken, was passiert... statt ca 500 Ergebnissen bekomme ich nun über 800.000, mit extrem vielen Dopplungen, ganz als würde jeder der AND Bedingungen für sich auch schon gelten.
Kann mir ein SQL Fuchs hier kurz Rat geben?

Danke,
Gerald