tricky, because MySQL does not support subqueries.
You'll have to do a trick with CASE(), SUM() and GROUP BY.
Use the CASE to return 1 or 0 depending on wether the purchase is before or after the set date.
Then use SUM() to add the CASE output for all the purchases, and use GROUP BY to get result 'grouped by' customer.
a bit like this (not good, but to get the idea):
SELECT customerid, SUM(CASE WHEN purchasedate > setdate THEN 1 ELSE 0 END) AS badpurchases
FROM table
GROUP BY customerid;
now a new field is created, called 'badpurchases' and it holds the number of purchases done after the given date.
You can add another SUM(CASE thing to count the good purchases.
Then you'll get a result for all customers, counting their good and bad purchases.
Then you can use the HAVING clause to return only those who do have >1 good purchases and 0 bad purchases.
Like I said, tricky with MySQL shitty SQL support.
A forum, a FAQ, what else do you need?