全面接触SQL语法(5)

来    源: 互联网
 作    者: 不祥
 发表日期: 2005-12-17 16:13:19
 阅读次数: 106
 文章标题: 数据库 → 全面接触SQL语法(5)
 查看权限: 普通文章
 查看方式: 查看:[ 大字 中字 小字 ] [双击滚屏]
 正    文:
全面接触SQL语法(5)
BETWEEN...AND 运算符

 

决定某一人数值是否介于特定的范围之内,此运算符只可以用在SQL的语句中。

expr[Not]BETWEEN value1 AND value2

expr

指定要加以计算的字段与表达式的组合。

value1,value2

所指明的数值范围。

例如:

若是要从职员表格查询出所有年龄介于25-30岁的员工,可以利用下面的程序来做。

SELECT 姓名,年龄 BETWEEN 25 AND 30

FROM 职员表格;

 

LIKE 操作数

用来将一字符串与另一特定字符串样式(pattern)比较,并将符合该字符串样式的记录过滤出来。

expression LIKE "pattern"

expression

使用在WHERE条件子句,SQL表达式。

pattern

用以比较的字符串样式。

例如:

若是你要查询出所有以“李”为首的姓氏,可以利用下面的式子。

Like "李*"

LIKE操作数的多种范例:

1、多个字符:

(1)"a*a"

可筛选:"aa","aBa","aBBBa",不能筛选:"aBC"

(2)"*ab*"

可筛选:"abc","AABB","Xab",不能筛选:"aZb","bac"

2、特殊字符:

"a“*”a"

可筛选:"a*a",不能筛选:"aaa"

3、单一字符:

"a?a"

可筛选:"aaa","a3a","aBa",不能筛选:"aBBBa"

4、单一数字:

"a#a"

可筛选:"a0a","a1a","a2a",不能筛选:"aaa","a10a"

5、字符范围:

"“a-z”"

可筛选:"f","p","j",不能筛选:"2","&"

6、指定字符以外部范围:

"“!a-z”"

7、指定非数字:

"“!0-9”"

可筛选:"A","a","&","~",不能筛选:"0","1","9"

8、组合式结构:

"a“!b-m”#"

可筛选:"An9","az0","a99",不能筛选:"abc","aj0"

 

SQL数字函数

1、AVG:算数平均数

AVG(expr)

expr

字段名称或表达式。

例如:

若要计算职员身高超过165厘米的职员平均身高,可以利用下面的SQL语句来完成。

SELECT Avg(身高)

AS 平均身高

FROM 职员表格 WHERE 身高> 165;

2、COUNT:计算记录条数

COUNT(expr)

expr

字段名称或表达式。

例如:

若是要统计出业务部门的职员人数,并查询出职员的姓名,可以利用下面的程序。

SELECT Count(姓名) AS 职员姓名

FROM 职员表格

WHERE 部门名称='业务部';

3、FIRST与LAST:返回某字段的第一条数据与最后一条数据。

FIRST(expr)

LAST(expr)

expr

字段名称或表达式。

例如:

若是要找出货品数量字段的第一条数据与货品价格字段的最后一条数据时,可以利用下面的查询方式。

SELECT FIRST(货品数量),LAST(货品价格)

FROM 订单表格

4、MAX,与MIN:返回某字段的最大值与最小值。

用法同FIRST与LAST。

5、SUM:返回某特定字段或是运算的总和数值。

SUM(expr)

expr

字段名称或表达式。

例如:

要计算出货品总价,可使用下面的程序。

SELECT

Sum(单位价格*货品数量)

AS 货品总价 FROM 订单表格

多层SQL查询

顾名思义,多层的SQL查询的便在于:“在一个SQL语句中可以包含另一个SQL查询语句,形成内部嵌套的查询类型。”

comparison[ANY|ALL|SOME](sqlstatement)

expression[NOT]IN (sqlstatement)

[NOT]EXISTS(sqlstatement)

comparison

将表达式与内层查询的结果比较的操作。

expression

对内层查询的结果作搜索的表达式。

sqlstatement

为SELECT语句构成的SQL查询,必须用()将该语句括起来。

 

例如:

我们先从订单表格当中,查询出所有的单位,再将产品表格中的单位与的一一对比,查询出所有高于订单表格的单位价格的记录。

SELECT * FROM 产品表格

WHERE 单位价格> ANY (SELECT 单位价格 FROM 订单表格 WHERE 折扣> =.25);

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值