📅  最后修改于: 2023-12-03 15:35:06.364000             🧑  作者: Mango
在 SQL 数据库中,一个表中的数据通常与其他表中的数据有关联。为了处理这些关联,我们需要使用联接(join)操作,从两个或多个表中选择需要的数据,并按需要将它们合并在一起。
SQL 中使用以下关键字来执行不同类型的联接操作:
INNER JOIN 返回两个表中的匹配行。使用 INNER JOIN 时,查询可以按以下语法书写:
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;
在该语法中,我们使用表格 table1
和 table2
,其中 table1.column_name
和 table2.column_name
是连接条件,指的是两个表格中用于匹配的列。
LEFT JOIN 返回左表中的所有行以及与右表中匹配的行。该操作使用以下语法:
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;
在该语法中,除了使用 INNER JOIN 中相同的方法之外,我们还使用了 LEFT JOIN
语句,以保留左表中的所有行。
NULL
值填充。RIGHT JOIN 与 LEFT JOIN 相反返回右表中的所有行,并将它们与左表中的所有匹配行相连。该操作使用以下语法:
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
NULL
值填充。FULL OUTER JOIN 连接了左表和右表,并返回所有行,不论它们是否有匹配行。该操作使用以下语法:
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name;
在这个查询中,我们可以找到所有不匹配的行并且用 NULL
值填充。
WHERE 语句被用来过滤结果集中的数据。根据指定条件,它可以选择想要的数据,其语法为:
SELECT column_name(s)
FROM table_name
WHERE condition;
可以使用以下比较符号:
| 比较符号 | 描述 | | --- | --- | | = | 等于 | | <> | 不等于 | | > | 大于 | | < | 小于 | | >= | 大于等于 | | <= | 小于等于 | | LIKE | 模糊搜索 | | IN | 指定多个可能值 |
以下是使用 WHERE 语句选择数据的示例:
SELECT *
FROM Customers
WHERE Country = 'Germany';
在这个例子中,我们使用 WHERE
语句选择来自德国的顾客。