0
内的两个值我是相当新的SQL查询和我有麻烦已在运行的数据库执行查询。SQL SELECT查询同一领域
我需要运行两个查询,首先要检查谁已经4天前签约,并没有作出任何的订单并没有receieved电子邮件给他们的报价。这很好。
下一个查询是检查客户已签署了8天前,没有作出任何订单,并已receieved 3天的电子邮件。我可以做到这一点,但我也需要检查他们还没有收到第二封电子邮件,这是令我困惑的部分。即使当我再次运行查询时,客户已经发送了2封电子邮件,他们仍然出现。
$sql = "
SELECT c.customerID, c.email, c.forename, c.date
FROM customers c
LEFT OUTER JOIN orders_headers o ON o.customerID=c.customerID
LEFT OUTER JOIN no_order_mail_sent m ON m.customerID=c.customerID
LEFT OUTER JOIN automated_email_discount e ON e.customerID=c.customerID
WHERE m.customerID IS NULL
AND o.customerID IS NULL
AND e.customerID IS NOT NULL
AND e.discount_code_id='1'
AND e.discount_code_id!='2'
AND STR_TO_DATE(c.date, '%Y%m%d') ='".date('Y-m-d', strtotime('-'.$days.'days'))."'
";
两个折扣代码是1第一电子邮件(5%的折扣)和2用于第二电子邮件(10%的折扣),这是我试图以检查是在数据库中的值。
我运行PHP中的查询。任何帮助将不胜感激。
在此先感谢。
你可以添加一些样本数据? – 2012-07-31 09:47:39
'1'<>'2'表示所有值为'1'。 – wildplasser 2012-07-31 09:51:51
@wildplasser对于所有'1'的值,'1'<>'2'是什么意思?对不起,这是新的。 – 2012-07-31 09:55:02