Je suis relativement nouveau dans les requêtes SQL et j'ai de la difficulté à effectuer une requête sur une base de données déjà en cours d'exécution.Requête SQL SELECT pour deux valeurs dans le même champ
Je dois lancer deux requêtes, d'abord pour vérifier qui s'est inscrit il y a 3 jours et n'a pas passé de commandes et n'a pas reçu d'e-mail lui donnant une offre. Cela fonctionne très bien.
La requête suivante consiste à vérifier qu'un client s'est inscrit il y a 7 jours, n'a effectué aucune commande et a reçu l'e-mail de 3 jours. Je peux l'obtenir pour faire cela mais je dois aussi vérifier qu'ils n'ont pas déjà reçu le deuxième email et c'est la partie qui me déroute. Même lorsque le client a été envoyé le 2 e-mail lorsque je lance la requête à nouveau, ils apparaissent toujours.
$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'))."'
";
Les deux codes de réduction sont 1 pour le premier courrier électronique (5% de réduction) et de 2 pour le deuxième courriel (10% de réduction) qui est la valeur I essaie de vérifier que la base de données est à l'intérieur.
Je cours la requête en PHP. Toute aide serait reconnaissante.
Merci d'avance.
Pouvez-vous ajouter quelques exemples de données? –
'1' <> '2' pour toutes les valeurs de '1'. – wildplasser
@wildplasser Que voulez-vous dire par '1' <> '2' pour toutes les valeurs de '1'? Désolé pour ça. –