Heim  >  Artikel  >  Datenbank  >  So verwenden Sie JOIN in MySQL

So verwenden Sie JOIN in MySQL

WBOY
WBOYnach vorne
2023-06-03 09:30:351446Durchsuche

Einführung#🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜#A's Exklusive + ABs public#🎜🎜 ## 🎜🎜 ## 🎜🎜##

B's exklusiv + AB's öffentlich

So verwenden Sie JOIN in MySQL

    AB's öffentlich
  • A's einzigartig
  • # 🎜🎜#

    B's Unique
  • # 🎜🎜#
  • A's Unique+B's Unique+ AB's Public

  • # 🎜 🎜#A ist einzigartig+B ist einzigartig

  • Übung

    # 🎜🎜#buildTable

  • Abteilungstabelle#🎜 🎜 ## 🎜🎜#
    DROP TABLE IF EXISTS `dept`;
    CREATE TABLE `dept` (
    	`dept_id` int(11) NOT NULL AUTO_INCREMENT,
        `dept_name` varchar(30) DEFAULT NULL,
        `dept_number` int(11) DEFAULT NULL,
        PRIMARY KEY (`dept_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
    
    INSERT INTO `dept` VALUES ('1', 'AA', '100');
    INSERT INTO `dept` VALUES ('2', 'BB', '200');
    INSERT INTO `dept` VALUES ('3', 'CC', '300');
    INSERT INTO `dept` VALUES ('4', 'DD', '400');
    INSERT INTO `dept` VALUES ('5', 'HH', '500');
    #🎜🎜 ## 🎜🎜##Mitarbeitertabelle### 🎜🎜#
    DROP TABLE IF EXISTS `emp`;
    CREATE TABLE `emp` (
        `emp_id` int(11) NOT NULL AUTO_INCREMENT,
        `emp_name` varchar(30) DEFAULT NULL,
        `emp_age` int(11) DEFAULT NULL,
        `dept_id` int(11) NOT NULL,
        PRIMARY KEY (`emp_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
    
    INSERT INTO `emp` VALUES('1', 'zhangsan', '20', '1');
    INSERT INTO `emp` VALUES('2', 'lisi', '25', '6');
    INSERT INTO `emp` VALUES('3', 'wangwu', '19', '4');
    INSERT INTO `emp` VALUES('4', 'zhaoliu', '29', '5');
    INSERT INTO `emp` VALUES('5', 'xiaohong', '30', '2');
    INSERT INTO `emp` VALUES('6', 'xiaohu', '26', '3');
    INSERT INTO `emp` VALUES('7', 'zhangle', '23', '3');
    INSERT INTO `emp` VALUES('8', 'qingtian', '38', '3');
    INSERT INTO `emp` VALUES('9', 'xiayutian', '36', '2');
    INSERT INTO `emp` VALUES('10', 'fangjia', '40', '1');

    Szenario -Analyse### 🎜🎜 ## 🎜🎜#1. )

  • A ist einzigartig + AB ist öffentlich#🎜🎜 #

    SELECT * from emp e LEFT JOIN dept d ON e.dept_id=d.dept_id;

#🎜 🎜 #2. Rechts beitreten (rechts beitreten)

B's Unique + AB's Public

SELECT * from emp e RIGHT JOIN dept d ON e.dept_id=d.dept_id;

#🎜🎜 #

3. Innerer Join (innerer Join)
# 4. Linker äußerer Join (linker äußerer Join) und rechte Tabelle = null)

#🎜🎜 #A's unique

SELECT * from emp e INNER JOIN dept d ON e.dept_id=d.dept_id;

#🎜 🎜#

5. Rechter äußerer Join (rechter Join und linke Tabelle = null)

So verwenden Sie JOIN in MySQL

B ist einzigartig

SELECT * from emp e LEFT JOIN dept d ON e.dept_id=d.dept_id WHERE d.dept_id is null;
# 🎜🎜#

6. Voll äußerer Join

So verwenden Sie JOIN in MySQL

A ist exklusiv + B einzigartig + AB ist öffentlich

Hinweis: MySQL unterstützt FULL OUTER nicht JOIN (unterstützt in ORACLE).

Verwenden Sie also UNION, um es zu implementieren, Sie können Duplikate **zusammenführen und entfernen**

So verwenden Sie JOIN in MySQLAnwendungsszenarien:

#🎜 🎜#

Die abzufragenden Ergebnisse stammen aus mehreren Tabellen, und die mehreren Tabellen haben keine direkte Verbindungsbeziehung, aber die abgefragten Informationen sind konsistent

Funktionen:

1. Die Anzahl der Abfragespalten, die mehrere

Abfrageanweisungen erfordern, ist gleich

So verwenden Sie JOIN in MySQL

2. Die Anzahl der Abfragespalten, die mehrere Abfragen erfordern Anweisungen sind #🎜 🎜#Der Typ und die Reihenfolge jeder Spalte sollten konsistent sein

#3 Das Union-Schlüsselwort ** wird standardmäßig dedupliziert #union alle, Duplikate können enthalten sein **

SELECT * from emp e RIGHT JOIN dept d ON e.dept_id=d.dept_id WHERE e.dept_id is null;

7. Vollständiger äußerer Join (vollständiger äußerer Join und linke und rechte Tabellen = null)So verwenden Sie JOIN in MySQL

A's exklusiv+B's exklusiv

SELECT * from emp e LEFT JOIN dept d ON e.dept_id=d.dept_id UNION SELECT * FROM emp e RIGHT JOIN dept d ON e.dept_id=d.dept_id;

Das obige ist der detaillierte Inhalt vonSo verwenden Sie JOIN in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen