MySQL表连接_MySQL
一、内连接
语法:
SELECT ... FROM join_table [INNER] JOIN join_table2 [ON join_condition] WHERE where_definition
只列出这些连接表中与连接条件相匹配的数据行。
例:
SELECT * FROM table1 a JOIN table2 b ON a.dept_id = b.id;或SELECT * FROM table1 a, table2 b WHERE a.dept_id = b.id;
二、外连接
语法:
SELECT ... FROM join_table (LEFT|RIGHT|FULL) [OUTER] JOIN join_table2 ON join_condition WHERE where_definition
不仅列出与连接条件相匹配的行,还列出左表(左外连接)、右表(右外连接)或两个表(全外连接)中所有符合WHERE过滤条件的数据行。需要注意的是MySQL5.1暂不支持FULL JOIN连接。
例:
左外连: SELECT * FROM table1 a LEFT JOIN table2 b ON a.dept_id = b.id;右外连:SELECT * FROM table1 a RIGHT JOIN table2 b ON a.dept_id = b.id;
三、交叉连接
语法:
SELECT ... FROM join_table CROSS JOIN join_table2;
没有ON子句和WHERE子句,它返回连接表中所有数据行的笛卡尔积。
其结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
相当于:
SELECT ... FROM table1, table2;
四、自连接
参与连接的表都是同一张表。(通过给表取别名虚拟出)
SELECT a.name aname, b.name bname FROM table a LEFT JOIN table bON b.id = a.gmr;--查询出员工姓名和其经理的姓名 SELECT a.name aname FROM table a RIGHT JOIN table b ON a.id = b.gmr; --查询出所有经理的姓名
自连接在实际应用当中比较常见,其语句也绕口,可将同一张表当成两张不同的表来理解,比如明明是同一张表,记录了员工基本信息,其中包含着每位员工的经理的ID,那么则可以把它当作一张员工表,一张经理表来对待。呃~怎么说呢,还是有点绕,等到实际应用中慢慢摸索吧。。。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Reduzieren Sie die Verwendung des MySQL -Speichers im Docker

Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung?

So lösen Sie das Problem der MySQL können die gemeinsame Bibliothek nicht öffnen

Führen Sie MySQL in Linux aus (mit/ohne Podman -Container mit Phpmyadmin)

Ausführen mehrerer MySQL-Versionen auf macOS: Eine Schritt-für-Schritt-Anleitung

Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)?

Wie konfiguriere ich die SSL/TLS -Verschlüsselung für MySQL -Verbindungen?
