[My SQL] 使用SELECT检索数据

为了使用SELECT检索表,必须提供两个条件:想选择什么和从哪里选择。

在这里我们假设有一张表,名为products,内容如下:

[My SQL] 使用SELECT检索数据_第1张图片

常用的检索命令和举例如下:

检索某一列(SELECT语句检索数据是无序的,因此可能每次检索的结果顺序不一致)

SELECT prod_name
FROM products;

结果如下:

 [My SQL] 使用SELECT检索数据_第2张图片

检索多列

SELECT prod_id,prod_name,prod_price
FROM products;

结果如下:

[My SQL] 使用SELECT检索数据_第3张图片


检索所有列(相当于显示全表)

SELECT * FROM products;


检索不同的行(相当于对所选中的列去重,如果DISTINCT后面跟着多个列,那么将对多个列联合去重)

SELECT DISTINCT vend_id
FROM products;

检索结果:

[My SQL] 使用SELECT检索数据_第4张图片

指定返回行数(LIMIT后面的数字指定最大显示行数,同样的,这样的结果是无序的)

SELECT prod_name,prod_price
FROM products
LIMIT 5;
结果如下:

[My SQL] 使用SELECT检索数据_第5张图片


指定返回行数和返回值开始行(LIMIT后的第一个数字指定开始的行号,第二个数字指定返回的行数;行号从0开始;)

SELECT prod_name,prod_price
FROM products
LIMIT 2,3;

结果如下:(显示行号为2开始的3行数据)

[My SQL] 使用SELECT检索数据_第6张图片


检索单列并排序(ORDER BY后面是列名,相当于按照某列对全表进行排序;默认是升序排列)

SELECT prod_name,prod_price
FROM products
ORDER BY prod_price;
结果如下:

[My SQL] 使用SELECT检索数据_第7张图片

按照多列进行排序(ORDER BY后面跟着的列名,按照顺序依此对全表进行排序)

SELECT prod_name,vend_id,prod_price
FROM products
ORDER BY vend_id,prod_price;

结果如下:

[My SQL] 使用SELECT检索数据_第8张图片


指定排序方向(DESC关键字指定降序排列,只应用于在他前面的一个列名,因此如果要对多列都进行降序,应该使用多个DESC)

SELECT prod_name,vend_id,prod_price
FROM products
ORDER BY vend_id DESC, prod_price;
结果如下:

[My SQL] 使用SELECT检索数据_第9张图片

你可能感兴趣的:(My,SQL)