SQL语法学习笔记『SQL语法学习笔记(三)』
2010-02-10 16:19
281 查看
语句6:SELECT "栏位名" FROM " 表格名" WHERE "栏位名" BETWEEN '值一' AND '值二'
[align=left] [/align]
举例:这将选出栏位值包含在值一及值二之间的每一笔资料。
[align=left]举例来说,若我们要由 Store_Information 表格中找出所有介于 January 6, 1999 及 January 10, 1999 中的资料, [/align]
[align=left] [/align]
[align=left]我们就打入,[/align]
[align=left]SELECT * FROM Store_Information WHERE Date BETWEEN 'Jan-06-1999' AND 'Jan-10-1999' [/align]
[align=left]请读者注意:在不同的数据库中,日期的储存法可能会有所不同。在这里我们选择了其中一种储存法。 [/align]
[align=left]
结果: [/align]
语句7:SELECT "栏位名" FROM "表格名" WHERE "栏位名" LIKE {套式}
说明:{套式} 经常包括野卡 (wildcard). 以下是几个例子:
[align=left]· 'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字串。 'ABZ' 和 'A2Z' 都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。 [/align]
[align=left]· 'ABC%': 所有以 'ABC' 起头的字串。举例来说,'ABCD' 和 'ABCABC' 都符合这个套式。 [/align]
[align=left]· '%XYZ': 所有以 'XYZ' 结尾的字串。举例来说,'WXYZ' 和 'ZZXYZ' 都符合这个套式。 [/align]
· '%AN%': 所有含有 'AN' 这个套式的字串。举例来说, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合这个套式。
举例:我们将以上最后一个例子用在我们的 Store_Information 表格上:
[align=left] [/align]
[align=left]我們就打入,[/align]
[align=left]SELECT * FROM Store_Information WHERE store_name LIKE '%AN%'
[/align]
[align=left]
結果: [/align]
语句8:SELECT "栏位名" FROM "表格名" [WHERE "条件"]
ORDER BY "栏位名" [ASC, DESC]
语句说明:[] 代表 WHERE 是一定需要的。不过,如果 WHERE 子句存在的话,它是在 ORDER BY 子句之前。 ASC 代表结果会以由小往大的顺序列出,而 DESC 代表结果会以由大往小的顺序列出。如果两者皆没有被写出的话,那我们就会用 ASC。
我们可以照好几个不同的栏位来排顺序。在这个情况下, ORDER BY 子句的语法如下(假设有两个栏位):
ORDER BY "栏位一" [ASC, DESC], "栏位二" [ASC, DESC]
若我们对这两个栏位都选择由小往大的话,那这个子句就会造成结果是依据 "栏位一" 由小往大排。若有好几笔资料 "栏位一" 的值相等,那这几笔资料就依据 "栏位二" 由小往大排。
举例:若我们要依照 Sales 栏位的由大往小列出 Store_Information 表格中的资料,
[align=left] [/align]
[align=left]我们就打入,[/align]
[align=left]SELECT store_name, Sales, Date FROM Store_Information
ORDER BY Sales DESC
结果: [/align]
[align=left] [/align]
[align=left]在以上的例子中,我们用栏位名来指定排列顺序的依据。除了栏位名外,我们也可以用栏位的顺序 (依据 SQL 句中的顺序)。在 SELECT 后的第一个栏位为 1,第二个栏位为 2,以此类推。在上面这个例子中,我们打以下这一句 SQL 可以达到完全一样的效果: [/align]
[align=left]SELECT store_name, Sales, Date FROM Store_Information
ORDER BY 2 DESC [/align]本文出自 “罗斌个人原创天地” 博客,请务必保留此出处http://luobin.blog.51cto.com/882147/275973
[align=left] [/align]
举例:这将选出栏位值包含在值一及值二之间的每一笔资料。
[align=left]举例来说,若我们要由 Store_Information 表格中找出所有介于 January 6, 1999 及 January 10, 1999 中的资料, [/align]
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]Los Angeles [/align] | [align=left]$1500 [/align] | [align=left]Jan-05-1999 [/align] |
[align=left]San Diego [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
[align=left]San Francisco [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]Boston [/align] | [align=left]$700 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]我们就打入,[/align]
[align=left]SELECT * FROM Store_Information WHERE Date BETWEEN 'Jan-06-1999' AND 'Jan-10-1999' [/align]
[align=left]请读者注意:在不同的数据库中,日期的储存法可能会有所不同。在这里我们选择了其中一种储存法。 [/align]
[align=left]
结果: [/align]
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]San Diego [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
[align=left]San Francisco [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]Boston [/align] | [align=left]$700 [/align] | [align=left]Jan-08-1999 [/align] |
说明:{套式} 经常包括野卡 (wildcard). 以下是几个例子:
[align=left]· 'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字串。 'ABZ' 和 'A2Z' 都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。 [/align]
[align=left]· 'ABC%': 所有以 'ABC' 起头的字串。举例来说,'ABCD' 和 'ABCABC' 都符合这个套式。 [/align]
[align=left]· '%XYZ': 所有以 'XYZ' 结尾的字串。举例来说,'WXYZ' 和 'ZZXYZ' 都符合这个套式。 [/align]
· '%AN%': 所有含有 'AN' 这个套式的字串。举例来说, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合这个套式。
举例:我们将以上最后一个例子用在我们的 Store_Information 表格上:
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]LOS ANGELES [/align] | [align=left]$1500 [/align] | [align=left]Jan-05-1999 [/align] |
[align=left]SAN DIEGO [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
[align=left]SAN FRANCISCO [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]BOSTON [/align] | [align=left]$700 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]我們就打入,[/align]
[align=left]SELECT * FROM Store_Information WHERE store_name LIKE '%AN%'
[/align]
[align=left]
結果: [/align]
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]LOS ANGELES [/align] | [align=left]$1500 [/align] | [align=left]Jan-05-1999 [/align] |
[align=left]SAN FRANCISCO [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]SAN DIEGO [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
ORDER BY "栏位名" [ASC, DESC]
语句说明:[] 代表 WHERE 是一定需要的。不过,如果 WHERE 子句存在的话,它是在 ORDER BY 子句之前。 ASC 代表结果会以由小往大的顺序列出,而 DESC 代表结果会以由大往小的顺序列出。如果两者皆没有被写出的话,那我们就会用 ASC。
我们可以照好几个不同的栏位来排顺序。在这个情况下, ORDER BY 子句的语法如下(假设有两个栏位):
ORDER BY "栏位一" [ASC, DESC], "栏位二" [ASC, DESC]
若我们对这两个栏位都选择由小往大的话,那这个子句就会造成结果是依据 "栏位一" 由小往大排。若有好几笔资料 "栏位一" 的值相等,那这几笔资料就依据 "栏位二" 由小往大排。
举例:若我们要依照 Sales 栏位的由大往小列出 Store_Information 表格中的资料,
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]Los Angeles [/align] | [align=left]$1500 [/align] | [align=left]Jan-05-1999 [/align] |
[align=left]San Diego [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
[align=left]San Francisco [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]Boston [/align] | [align=left]$700 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]我们就打入,[/align]
[align=left]SELECT store_name, Sales, Date FROM Store_Information
ORDER BY Sales DESC
结果: [/align]
[align=left] [/align]
[align=left]store_name [/align] | [align=left]Sales [/align] | [align=left]Date [/align] |
[align=left]Los Angeles [/align] | [align=left]$1500 [/align] | [align=left]Jan-05-1999 [/align] |
[align=left]Boston [/align] | [align=left]$700 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]San Francisco [/align] | [align=left]$300 [/align] | [align=left]Jan-08-1999 [/align] |
[align=left]San Diego [/align] | [align=left]$250 [/align] | [align=left]Jan-07-1999 [/align] |
[align=left]SELECT store_name, Sales, Date FROM Store_Information
ORDER BY 2 DESC [/align]本文出自 “罗斌个人原创天地” 博客,请务必保留此出处http://luobin.blog.51cto.com/882147/275973
相关文章推荐
- PL/SQL学习笔记之基本块格式与语法
- PL/SQL学习笔记一之语法结构!!!
- SQL 语法学习笔记(转载)
- SQL语法学习笔记『SQL语法学习笔记(一)』
- MySQL学习笔记 -- day01 sql分类及DDL语法
- SQL语法学习笔记『SQL语法学习笔记(二)』
- Java学习笔记——MySQL的安装使用以及SQL语法简介
- 数据库学习笔记之SQL查询的基本语法结构
- w3school学习sql语法笔记--SQL 通配符
- SQL 学习笔记之Select完整语法及执行过程详解
- linq to sql 语法 学习笔记(1)
- sql语句学习笔记(5)-sql语法
- 学习笔记-SQL基础语法
- oracle 学习笔记 - PL/SQL基本语法
- SQL:1999基本语法(学习笔记)
- SQL学习笔记(基本语法)
- linq to sql 语法 学习笔记 存一下
- MySql学习笔记(4)--SQL(DML)语句语法
- linq to sql 语法 学习笔记(2)
- CUBRID学习笔记 41 sql语法之groupby 等