gauche Le placement des conditions de jointure sur et où est très important en PHP Cet article expliquera les connaissances pertinentes en détail.
Requête avec et dans la jointure gauche
SELECT p.pname,p.pcode,s.saleheure du produit en tant que p gauche rejoindre sales_detail comme s sur (s.pcode=p.pcode) et s.saletime dans ('2012-07-23','2012-07-05');
Le résultat trouvé :
+-------+-------+------------+
| pcode | heure de vente |
+-------+-------+------------+
| A | 23/07/2012 |
| A | 2012-07-05 |
| A | 2012-07-05 |
Requête de condition directe où
SELECT p.pname,p.pcode,s.saletime from product as p left join sales_detail as s on (s .pcode=p.pcode) où s .saletime in ('2012-07-23','2012-07-05');
Résultats de la requête
+----- ---+------------+
| pcode | saletime |
+------ ------ --+----------------+
| A | | A | 2012-07-05 |
| A | 2012-07-05 |
+-------+------- +---------- --+
Conclusion : L'association conditionnelle dans on affichera une valeur nulle lorsque les données d'une table ne se rencontrent pas les conditions. où sortiront les deux tables qui répondent complètement aux données de condition
+-------+-------+------------+
| A | 2012-07-23 |
| A | 2012-07-05 |
| A AC | >| B | DE | 2012-07-16 | Il y a une valeur dedans
| C | 🎜>S'il a une valeur mais ne remplit pas les conditions, il sera mis à NULL. S'il n'y a pas de valeur, elle doit être NULL
S'il s'agit d'une condition Where, elle doit être satisfaite.
Scénarios d'application : par exemple, s'il existe une table principale, vous pouvez alors envisager une jointure à gauche pour afficher les données basées sur la table principale
Résumé :
1. Pour la jointure gauche, quelle que soit la condition suivie de on, toutes les données du tableau de gauche seront trouvées. Par conséquent, si vous souhaitez filtrer, vous devez mettre la condition après où
2. .Pour la jointure interne, les données de la table qui satisfont à la condition après le Ce n'est qu'alors qu'elles peuvent être détectées, ce qui peut jouer un rôle de filtrage. Vous pouvez également mettre la condition après où.
La différence entre la condition on et la condition Where en SQL
Lorsque la base de données renvoie des enregistrements en connectant deux tables ou plus, elle génère une table temporaire intermédiaire , puis renvoyez cette table temporaire à l'utilisateur.
Lors de l'utilisation de left jion, la différence entre les conditions on etwhere est la suivante :
1. La condition on est une condition utilisée lors de la génération d'une table temporaire. in on est vrai renverra les enregistrements dans le tableau de gauche.
2. La condition Where est la condition de filtrage de la table temporaire après la génération de la table temporaire. Pour le moment, la jointure gauche n'a aucune signification (les enregistrements de la table de gauche doivent être renvoyés). Si la condition n'est pas vraie, tous seront filtrés.
Cet article explique les connaissances liées au placement de la jointure gauche et aux conditions pour plus de matériel d'apprentissage, veuillez faire attention au site Web php chinois.
Recommandations associées :
Connaissances connexes sur la fonction de requête floue php+mysql
Copier et déplacer des fichiers via les méthodes phpÀ propos des effets jQuery - connaissances liées au masquage et à l'affichage
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!