📜  SQL SELECT数据库(1)

📅  最后修改于: 2023-12-03 14:47:35.460000             🧑  作者: Mango

SQL SELECT数据库

什么是SQL SELECT语句

SQL SELECT语句是用于检索数据库中数据的最常见和最重要的方法。它是从一个或多个表中选择行的语句,返回查询结果集。

SQL SELECT语句的语法

SELECT 语句语法基本上分为三个部分:SELECT, FROM, WHERE。

  • SELECT:选择要查询的列名
  • FROM:从中查询这些列的表
  • WHERE:可选,指定产生行的条件

以下是SQL SELECT语句的基本语法:

SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND/OR condition2 AND/OR condition3 ...;
SQL SELECT语句的示例

customers表中选择所有列和行:

SELECT * FROM customers;

选择customers表中的customer_idcustomer_name列:

SELECT customer_id, customer_name
FROM customers;

选择customers表中的所有行,其中city列等于Beijing

SELECT *
FROM customers
WHERE city = 'Beijing';

选择orders表中的所有列和行,其中order_date列在2008-01-01之后:

SELECT *
FROM orders
WHERE order_date > '2008-01-01';
SQL SELECT语句的高级用法
别名

可以在SELECT语句中使用别名来指定列的新名称。这在一些情况下非常有用,比如列名太长或有歧义。

例如,在customers表中选择customer_id列,用ID替换列名:

SELECT customer_id AS ID
FROM customers;
聚合函数

聚合函数被用于对表中的行进行计算,并返回单个值。SQL中有五个聚合函数:

  • AVG():返回所有值的平均值
  • COUNT():返回行数
  • MAX():从指定的列中返回最大值
  • MIN():从指定的列中返回最小值
  • SUM():返回指定列的总和

例如,在orders表中选择订单总数:

SELECT COUNT(*)
FROM orders;
排序

可以使用ORDER BY子句按升序或降序排列结果集中的行。默认情况下,ORDER BY语句按升序排列结果集中的行。

例如,在customers表中选择所有行,按customer_name列升序排列:

SELECT *
FROM customers
ORDER BY customer_name;

customers表中选择所有行,按customer_name列降序排列:

SELECT *
FROM customers
ORDER BY customer_name DESC;
连接

连接是通过匹配每个表中的行来组合两个或多个表的行。有三种类型的连接:

  • INNER JOIN:返回匹配的行
  • LEFT JOIN:返回左表中的所有行和匹配的右表中的行
  • RIGHT JOIN:返回右表中的所有行和匹配的左表中的行

例如,在customersorders表之间使用内连接选择行:

SELECT customers.customer_id, customers.customer_name, orders.order_id
FROM customers
INNER JOIN orders
ON customers.customer_id = orders.customer_id;
总结

SQL SELECT语句是从一个或多个表中选择行的语句,返回查询结果集。它是SQL中最常用和最重要的语句之一。通过使用别名、聚合函数、排序和连接等高级用法,可以更加灵活和高效地使用SQL SELECT语句。