SQL必知必会-笔记(二)数据库基本操作(上)

1. 检索数据

1.只检索前5行数据

select prod_name from Products limit 5;

2.指定从哪儿开始及检索的行数

select prod_name from Products limit 2 offset 6;

从第6行开始的2行数据,注意,第一个被检索的是0行,而不是第一行。结果如下:

当然,也可以写成

select prod_name from Products limit 6,2;

2. 使用注释

  • 使用-
-- 这是一行注释
select prod_name from Products limit 6,2;
  • 使用#
# select prod_name from Products limit 2 offset 6;
  • 使用/* */

3. 排序检索数据

需要明白的一点是,检索出的数据并不是随机显示的,数据一般将以它在底层表中出现的顺序显示,但是这个顺序会受到DBMS重用回收存储空间方式的影响。
所以,关系数据库设计理论认为,如果不明确规定排序顺序,则不应该假定检索出的数据的顺序有任何意义

使用ORDER BY排序检索出的数据。

SELECT prod_name FROM Products ORDER BY prod_price;

需要注意的是,应该保证order bySELECT语句中的最后一条子语句,如果不是,会出现错误信息

按多个列排序

例如,先按照价格,在按照名称排序

SELECT prod_name,prod_price FROM Products ORDER BY prod_price,prod_name;

指定排序方向

数据排序默认升序,为了降序排列,可以使用DESC关键字(与此相对应的是ASC关键字,升序)

SELECT prod_name,prod_price FROM Products ORDER BY prod_price DESC ;

会得到如下结果

另外,DESC只应用到直接位于其前面的列名,比如

SELECT prod_name,prod_price FROM Products ORDER BY prod_price DESC ,prod_name;

会得到如下结果,降序排列prod_price后,prod_name仍然是按照升序排列

4. 过滤数据

使用WHERE子句中指定的搜索条件进行过滤,WHERE子句在表名之后给出。

select prod_name,prod_price from Products where prod_price = 3.49;

注意,这里仍然需要注意,如果order byWHERE同时使用的话,应该让order by位于WHERE之后。

select prod_name,prod_price from Products where prod_price BETWEEN 3.49 AND 9.49 order by prod_price;

posted @ 2019-01-30 17:26  xLI4n  阅读(277)  评论(0编辑  收藏  举报