77范文网 - 专业文章范例文档资料分享平台

SQL语句基础教程(2)

来源:网络收集 时间:2019-04-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

10, 1999 中的资料,

Store_Information 表格 store_name Los Angeles San Diego San Francisco Boston 我们就键入,

SELECT *

FROM Store_Information

WHERE Date BETWEEN 'Jan-06-1999' AND 'Jan-10-1999'

请读者注意:在不同的数据库中,日期的储存法可能会有所不同。在这里我们选择了其中一种储存法。

结果: store_name San Diego San Francisco Boston

Sales $250 $300 $700 Date Jan-07-1999 Jan-08-1999 Jan-08-1999 Sales $1500 $250 $300 $700 Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999 LIKE

LIKE 是另一个在 WHERE 子句中会用到的指令。基本上, LIKE 能让我们依据一个模式 (pattern) 来找出我们要的资料。相对来说,在运用 IN 的时候,我们完全地知道我们需要的条件;在运用 BETWEEN 的时候,我们则是列出一个范围。 LIKE 的语法如下:

SELECT \栏位名\ FROM \表格名\

WHERE \栏位名\模式}

{模式} 经常包括野卡 (wildcard). 以下是几个例子:

'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字符串。 'ABZ' 和 'A2Z' 都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。

'ABC%': 所有以 'ABC' 起头的字符串。举例来说,'ABCD' 和 'ABCABC' 都符合这个模式。

'%XYZ': 所有以 'XYZ' 结尾的字符串。举例来说,'WXYZ' 和 'ZZXYZ' 都符合这个模式。

'%AN%': 所有含有 'AN'这个模式的字符串。举例来说, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合这个模式。

我们将以上最后一个例子用在我们的 Store_Information 表格上:

Store_Information 表格 store_name LOS ANGELES SAN DIEGO SAN FRANCISCO BOSTON 我们就键入,

SELECT *

FROM Store_Information WHERE store_name LIKE '%AN%'

结果: store_name LOS ANGELES SAN FRANCISCO SAN DIEGO

Sales $1500 $300 $250 Date Jan-05-1999 Jan-08-1999 Jan-07-1999 Sales $1500 $250 $300 $700 Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999 ORDER BY

到目前为止,我们已学到如何藉由 SELECT 及 WHERE 这两个指令将资料由表格中抓出。不过我们尚未提到这些资料要如何排列。这其实是一个很重要的问题。事实上,我们经常需要能够将抓出的资料做一个有系统的显示。这可能是由小往大 (ascending) 或是由大往小(descending)。在这种情况下,我们就可以运用 ORDER BY 这个指令来达到我们的目的。

ORDER BY 的语法如下:

SELECT \栏位名\ FROM \表格名\

[WHERE \条件\

ORDER BY \栏位名\

[] 代表 WHERE 子句不是一定需要的。不过,如果 WHERE 子句存在的话,它是在 ORDER BY 子句之前。 ASC 代表结果会以由小往大的顺序列出,而 DESC 代表结果会以

由大往小的顺序列出。如果两者皆没有被写出的话,那我们就会用 ASC。

我们可以照好几个不同的栏位来排顺序。在这个情况下, ORDER BY 子句的语法如下(假设有两个栏位):

ORDER BY \栏位一\栏位二\

若我们对这两个栏位都选择由小往大的话,那这个子句就会造成结果是依据 \栏位一\由小往大排。若有好几笔资料 \栏位一\的值相等,那这几笔资料就依据 \栏位二\由小往大排。

举例来说,若我们要依照 Sales 栏位的由大往小列出 Store_Information 表格中的资料,

Store_Information 表格 store_name Los Angeles San Diego San Francisco Boston 我们就键入,

SELECT store_name, Sales, Date FROM Store_Information ORDER BY Sales DESC

结果: store_name Los Angeles Boston San Francisco San Diego Sales $1500 $700 $300 $250 Date Jan-05-1999 Jan-08-1999 Jan-08-1999 Jan-07-1999 Sales $1500 $250 $300 $700 Date Jan-05-1999 Jan-07-1999 an-08-1999 Jan-08-1999 在以上的例子中,我们用栏位名来指定排列顺序的依据。除了栏位名外,我们也可以用栏位的顺序 (依据 SQL 句中的顺序)。在 SELECT 后的第一个栏位为 1,第二个栏位为 2,以此类推。在上面这个例子中,我们用以下这句 SQL 可以达到完全一样的效果:

SELECT store_name, Sales, Date FROM Store_Information ORDER BY 2 DESC

函数

既然数据库中有许多资料都是已数字的型态存在,一个很重要的用途就是要能够对这些数字做一些运算,例如将它们总合起来,或是找出它们的平均值。SQL 有提供一些这一类的函数。它们是:

AVG (平均) COUNT (计数) MAX (最大值) MIN (最小值) SUM (总合) 运用函数的语法是:

SELECT \函数名\栏位名\

FROM \表格名\

举例来说,若我们要由我们的范例表格中求出 Sales 栏位的总合,

Store_Information 表格 store_name Los Angeles San Diego Los Angeles Boston 我们就键入, Sales $1500 $250 $300 $700 Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999

SELECT SUM(Sales) FROM Store_Information

结果:

SUM(Sales) $2750

$2750 代表所有 Sales 栏位的总合: $1500 + $250 + $300 + $700.

除了函数的运用外,SQL 也可以做简单的数学运算,例如加(+)和减(-)。对于文字类的资料,SQL 也有好几个文字处理方面的函数,例如文字相连 (concatenation),文字修整 (trim),以及子字符串 (substring)。不同的数据库对这些函数有不同的语法,所以最好是参考您所用数据库的信息,来确定在那个数据库中,这些函数是如何被运用的。

COUNT

在上一页有提到, COUNT 是函数之一。由于它的使用广泛,我们在这里特别提出来讨论。

基本上, COUNT 让我们能够数出在表格中有多少笔资料被选出来。它的语法是:

SELECT COUNT(\栏位名\ FROM \表格名\

举例来说,若我们要找出我们的范例表格中有几笔 store_name 栏不是空白的资料时,

Store_Information 表格 store_name Los Angeles San Diego Los Angeles Boston 我们就键入,

SELECT COUNT(store_name) FROM Store_Information WHERE store_name is not NULL

结果:

Count(store_name) 4

\是 \这个栏位不是空白\的意思。

COUNT 和 DISTINCT 经常被合起来使用,目的是找出表格中有多少笔不同的资料 (至于这些资料实际上是什么并不重要)。举例来说,如果我们要找出我们的表格中有多少个不同的 store_name,我们就键入,

SELECT COUNT(DISTINCT store_name) FROM Store_Information

结果:

Count(DISTINCT store_name) 3

Sales $1500 $250 $300 $700 Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库SQL语句基础教程(2)在线全文阅读。

SQL语句基础教程(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/609103.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: