数据库SQL语句学习笔记(3)-排序检索数据

1.排序数据

如果不排序,数据一般将以它在底层表中出现的顺序显示,这有可能是数据最初添加到表中的顺序。但是如果数据随后进行过更新或删除,这个顺序就会受到DBMS重用回收存储空间的方式的影响。

子句:SQL语句由子句构成,有些子句是必须的,有些则是可选的。一个子句通常是由关键字加上所提供的数据组成。例如我们上个笔记中提到的SELECT语句中的FROM子句。

排序需要用到ORDER BY子句

SELECT prod_name FROM Products ORDER BY prod_name;

一定要保证ORDER BY子句是最后一条子句

2.按多个列排序

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

首先按照prod_price排序,然后按照prod_name排序

3.按列位置排序

SELECT prod_id,prod_name,prod_price
FROM Products
ORDER BY 2,3;

2指先按所选列中的第二个排序,再按第3个排序

4.指定排序方向

ORDER BY默认是升序排列,如果降序,需要指定DESC关键字

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

如果打算用多个列排序

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

DESC只直接应用到其前面的列,也就是prod_price上,并不作用于prod_name列,如果也按照prod_name降序,则在其后面加上DESC

相对的是ASC,指定升序

时间: 2024-10-26 13:37:55

数据库SQL语句学习笔记(3)-排序检索数据的相关文章

数据库SQL语句学习笔记(2)-检索数据库

首先设置好此连载笔记的演示所用的表 CREATE database sells; #创建名叫sells的数据库 USE sells; #告诉mysql,我要开始使用这个数据库了 CREATE TABLE Customers #创建Customers表 ( cust_id char(10) NOT NULL , cust_name char(50) NOT NULL , cust_address char(50) NULL , cust_city char(50) NULL , cust_stat

数据库SQL语句学习笔记(6)-使用函数处理数据

1.SQL也可以用函数来处理数据,函数一般是在数据上执行的,为数据的转换和处理提供了方便.但是每一个数据库管理系统(DBMS)都有特定的函数,事实上,只有少数几个函数被所有的DBMS等同地支持.例如, MYSQL中用SUBSTRING()函数提取字符串的组成部分,Access用MID() MYSQL中用CONVERT()函数进行数据类型转换,DB2使用CAST() MYSQL使用CURDATE()函数获取当前日期,SQLite使用DATE() 结论:SQL语句不是可移植的 2.SQL使用函数 文

数据库SQL语句学习笔记(5)-创建计算字段

1.存储在表中的数据并不总是应用程序需要的,比如说我们有商品的单价,有售出商品的数量这两个列,但是我们为了打印发票,需要总价信息,即单价*商品.因此,我们需要直接从数据库中检索出转换,计算或格式化过的数据,而不是检索出数据.此时单价和数量是一般的表列,而总价就是计算出的字段. 字段:基本上与列的意思相同,经常互相使用,不过数据库列一般称为列. 只有数据库自己知道哪些列是列,哪些列是字段.应用程序并不能识别. USE sells; SELECT * FROM Vendors; 2. 拼接(conc

数据库SQL语句学习笔记(7)-汇总数据

目的:我们经常需要汇总数据而不是把它们实际检索出来,例如确定表的行数,某些列的总和,某些列的最值等.此时检索所有数据只能是浪费时间和系统资源. 第一部分:SQL给出了5个聚集函数,聚集函数是指对某些行运行的函数,计算并返回一个值. SQL聚集函数 函数 说明 AVG() 返回某列的平均值 COUNT() 返回某列的行数 MAX() 返回某列的最大值 MIN() 返回某列的最小值 SUM() 返回某列的和 1.AVG() SELECT AVG(prod_price) AS average_pric

团队项目----数据库SQL语句学习总结与实践

在本次团队项目编程过程中,我主要负责数据库的设计与建立:在知识不够,能力不足,无数据库设计经验的情况下,对SQL语句进行了较为深入的学习,今天将成果整理之后,写了这篇博客,欢迎大家指出我的不足. 首先,介绍一下Windows下使用DOS命令进入MySQL数据库 1.桌面左下角windows图标--搜索框内输入cmd,结果如图所示,点击cmd.exe,或者使用快捷键Windows键(在键盘上有个Windows标志的按键)+R输入cmd后回车. 2.启动mysql数据库:在出来的DOS命令窗口中输入

SQL语句学习笔记

1 ---20161107,循环执行sql语句 2 3 declare @i int --定义变量 4 set @i=45 5 while @i<=106 --设置循环条件 6 begin 7 --执行语句 8 update MMS_T_D_MEMatStatistics 9 10 11 --rand():返回0-1的随机数; 12 --ceil(X):返回 大于等于 X的最小整数; 13 --floor(x)与 ceil()相反,产生小于等于指定值(x)的最大整数 14 15 ---获取1-1

数据库SQL语句查询指定时间段内的数据

[摘要]有的时候,我们需要查询数据库某段时间之间的数据,比如2016年5月1号到到5月3号之间用户注册数量(特殊节假日期间)等.那么用SQL语句如何实现呢? 首先,数据表中的存时间的字段比如是addtime可能是时间戳(varchar),也可能是用timestamp类型表示,如果是时间戳格式当然好办,如果是timestamp格式:YYYY-MM-DD HH:II:SS这个格式,如2016-05-01 00:00:00这种格式的SQL语句怎么表示?有下面两张方式: (1)第一种方法,使用关键字be

SQL语句学习手册实例版

SQL语句学习手册实例版 表操作 例1  对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: CREATE  TABLE  STUDENTS (SNO      NUMERIC (6, 0) NOT NULL SNAME    CHAR (8) NOT NULL AGE      NUMERIC(3,0) SEX      CHAR(2) BPLACE  CHAR(20) PRIMARY KEY(SNO)) 例2  对于表的教学管理数据库中的表 ENROLLS ,可以定义如下: C

mysql学习之三:sql语句学习

SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统.SQL 语句用于取回和更新数据库中的数据.SQL 可与数据库程序协同工作,比如MySQL. MS Access.DB2.Informix.MS SQL Server.Oracle.Sybase 以及其他数据库系统. 不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT.UPDATE.DELETE.INSERT.WHERE 等等).