Maison base de données tutoriel mysql 有意思的left join语句

有意思的left join语句

Jun 07, 2016 pm 02:53 PM
join left 语句

有意思的left join语句 问题的初衷是,在一个SQL语句中,有left join, 我加条件在where后面发生死锁,于是想是否可以把条件加入到left join的on后面? www.2cto.com 也就是下面两个语句是否效果一样: 语句1: select t1.*,t2.* from t1 left join t2 on t1


有意思的left join语句

 

问题的初衷是,在一个SQL语句中,有left join, 我加条件在where后面发生死锁,于是想是否可以把条件加入到left join的on后面?  www.2cto.com  

也就是下面两个语句是否效果一样:

语句1: select t1.*,t2.* from t1 left join t2 on t1.id=t2.id and t1.feild=1

 

语句2: select t1.*,t2.* from t1 left join t2 on t1.id=t2.id where t1.feild=1

 

数据环境:

create table t1(id int, feild int);

insert into t1 values(1 , 1);

insert into t1 values(1 , 2);

insert into t1 values(1 , 3);

insert into t1 values(1 , 4);

insert into t1 values(2 , 1);

insert into t1 values(2 , 2);

create table t2(id int, feild int);

insert into t2 values(1 , 1);

insert into t2 values(1 , 2);

insert into t2 values(1 , 5);

insert into t2 values(1 , 6);

insert into t2 values(2 , 1);

insert into t2 values(2 , 3);

 

经过验证发现: 语句1可以这样来理解,把left join 的on后面的所有条件看成一个整体,这里就是t1.id=t2.id and t1.feild=1看成一个整体,坐连接的时候,串t2表,看是否有满足条件的记录,如果没有就串null值。

语句2的理解简单了,现在left join,在最后结果集中做where过滤

 

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser JOIN dans MySql Comment utiliser JOIN dans MySql Jun 04, 2023 am 08:02 AM

La signification de JOIN est similaire au mot anglais "join". Il joint deux tables et peut être grossièrement divisé en jointure interne, jointure externe, jointure droite, jointure gauche et jointure naturelle. Créez d'abord deux tables, ce qui suit est utilisé comme exemple CREATETABLEt_blog(idINTPRIMARYKEYAUTO_INCREMENT,titleVARCHAR(50),typeIdINT);SELECT*FROMt_blog;+----+------+--------+ | identifiant|titre|typeId|+----+-------+--------+|1|aaa|1||2|bbb|2||3|ccc|3 |

Quelle touche reste-t-il sur le clavier ? Quelle touche reste-t-il sur le clavier ? Mar 13, 2023 pm 02:27 PM

Le clavier gauche est la touche de direction gauche et la droite est la touche de direction droite. Généralement, le clavier est remplacé par des symboles ou des flèches. Certains claviers sont étiquetés en anglais. Le clavier est un périphérique de commande et de saisie de données utilisé pour faire fonctionner l'équipement. , et fait également référence à la disposition du système. Un ensemble de touches de fonction qui font fonctionner une machine ou un équipement.

Quel est le principe d'utilisation de MySQL Join ? Quel est le principe d'utilisation de MySQL Join ? May 26, 2023 am 10:07 AM

Le type de jointure leftjoin utilise la table de gauche comme table de pilotage et la table de gauche comme base de l'ensemble de résultats. Les données de la table de droite sont connectées à l'ensemble de résultats. rightjoin utilise la table de droite comme table de pilotage et la table de droite comme. la base de l'ensemble de résultats pour connecter la table de gauche. Les données sont ajoutées à l'ensemble de résultats innerjoin. L'ensemble de résultats prend l'intersection des deux tables. L'ensemble de résultats prend l'union des deux tables MySQL. fulljoin. La différence entre union et unionall est que l'union dédupliquera le produit cartésien de jointure croisée. Si la condition Where n'est pas utilisée, l'ensemble de résultats sera le produit des deux lignes de table associées. défini, il sera transmis conformément à la condition.

Que sont la requête de jointure de MySQL et les méthodes de requête multiples ? Que sont la requête de jointure de MySQL et les méthodes de requête multiples ? Jun 02, 2023 pm 04:29 PM

Par rapport à la requête de jointure et aux requêtes multiples, laquelle est la plus efficace, la requête MySQL multi-table ou la requête multiple à table unique ? Lorsque la quantité de données n'est pas suffisamment importante, l'utilisation de la jointure ne pose aucun problème, mais elle se fait généralement au niveau de la couche de service. Premièrement : les ressources informatiques d'une base de données autonome sont très coûteuses et la base de données doit servir à la fois à l'écriture. et lire en même temps, ce qui nécessite une consommation de processeur. Afin de rendre la base de données, le débit devient plus élevé et l'entreprise ne se soucie pas de l'écart de retard de centaines de microsecondes à millisecondes. L'entreprise mettra plus de calculs dans la couche de service. Après tout, les ressources informatiques peuvent être facilement étendues horizontalement et les bases de données sont difficiles, donc la plupart des entreprises placeront des opérations informatiques pures dans la couche de service et utiliseront la base de données comme un système kv avec des capacités de transaction.

Comment utiliser JOIN dans MySQL Comment utiliser JOIN dans MySQL Jun 03, 2023 am 09:30 AM

Introduction A's unique + AB's public B's unique + AB's public AB's public A's unique B's unique A's unique + B's unique + AB's public A's unique + B's unique Entraînement à créer des tables de départements DROPTABLEIFEXISTS`dept`;CREATETABLE`dept`(`dept_id`int( 11)NOTNULLAUTO_INCREMENT,`nom_dept`varchar(30)DEFAULTNULL,`numéro_dept`int(11)DEFAULTNULL,PRIMARYKEY(`id_dept`))ENGINE =InnoDBAUT

Utilisez la fonction JOIN de MySQL pour joindre des tables Utilisez la fonction JOIN de MySQL pour joindre des tables Jul 26, 2023 am 08:37 AM

Utilisez la fonction JOIN de MySQL pour joindre des tables. Dans MySQL, JOIN est une opération très courante qui nous permet de joindre deux ou plusieurs tables en fonction des champs associés entre elles. Cela facilite l'interrogation et l'obtention de données pertinentes à partir de plusieurs tables, améliorant ainsi l'efficacité et la flexibilité des requêtes. Cet article utilisera des exemples de code pour montrer comment utiliser la fonction JOIN de MySQL pour joindre des tables. Créez d’abord deux exemples de tableaux : les étudiants et les scores. La table des étudiants contient des étudiants

instruction multi-catch en PHP8.0 instruction multi-catch en PHP8.0 May 14, 2023 pm 01:51 PM

Avec le développement des applications Web, le langage PHP a été largement utilisé dans le développement Web. Dans la version PHP8.0, une nouvelle fonctionnalité de langage a été introduite : l'instruction multi-catch. Qu'est-ce qu'une déclaration multi-catch ? Dans les versions précédentes de PHP, les développeurs devaient écrire plusieurs instructions catch pour gérer plusieurs types d'exceptions. Par exemple, le bloc de code suivant montre la gestion de deux exceptions différentes : try{//Somecodethatmay

Comment implémenter l'instruction pour déverrouiller la table dans MySQL ? Comment implémenter l'instruction pour déverrouiller la table dans MySQL ? Nov 08, 2023 pm 06:28 PM

Comment implémenter l'instruction pour déverrouiller la table dans MySQL ? Dans MySQL, les verrous de table sont un mécanisme de verrouillage couramment utilisé pour protéger l'intégrité et la cohérence des données. Lorsqu'une transaction lit et écrit dans une table, les autres transactions ne peuvent pas modifier la table. Ce mécanisme de verrouillage garantit dans une certaine mesure la cohérence des données, mais peut également provoquer le blocage d'autres transactions. Par conséquent, si une transaction ne peut pas continuer pour une raison quelconque, nous devons déverrouiller manuellement la table afin que les autres transactions puissent continuer. MySQL fournit une variété de

See all articles