数据库中的多个表之间往往存在关联关系,通过SQL语句可以实现对这些表之间的数据的操作。本文整理了常见的多表SQL语句大全,方便开发者进行学习和使用。
查询相关表中的数据
INNER JOIN
INNER JOIN用于查询两张表中具有匹配行的记录。语法如下:
SELECT * FROM table1 INNER JOIN table2 ON table1.column1 = table2.column2;
LEFT JOIN
LEFT JOIN查询第一张表中的所有记录,即使在第二张表中没有匹配的记录。语法如下:
SELECT * FROM table1 LEFT JOIN table2 ON table1.column1 = table2.column2;
RIGHT JOIN
RIGHT JOIN查询第二张表中的所有记录,即使在第一张表中没有匹配的记录。语法如下:
SELECT * FROM table1 RIGHT JOIN table2 ON table1.column1 = table2.column2;
FULL JOIN
FULL JOIN查询两张表中所有记录,包括匹配的和不匹配的记录。语法如下:
SELECT * FROM table1 FULL JOIN table2 ON table1.column1 = table2.column2;
更新相关表中的数据
UPDATE
UPDATE用于更新表中的数据。语法如下:
UPDATE table1 SET column1 = value1 WHERE condition;
DELETE
DELETE用于删除表中的数据。语法如下:
DELETE FROM table1 WHERE condition;
INSERT
INSERT用于向表中插入新数据。语法如下:
INSERT INTO table1 (column1, column2, ...) VALUES (value1, value2, ...);
其他相关语句
UNION
UNION用于合并来自不同表的具有相同结构的结果集。语法如下:
SELECT * FROM table1 UNION SELECT * FROM table2;
UNION ALL
UNION ALL与UNION类似,但不会删除重复的结果集。语法如下:
SELECT * FROM table1 UNION ALL SELECT * FROM table2;
EXCEPT
EXCEPT用于查找第一张表中但不包含在第二张表中的记录。语法如下:
SELECT * FROM table1 EXCEPT SELECT * FROM table2;
以上是多表SQL语句大全的常见部分,详细内容请参考相关数据库文档。