第4章SQL中的数据处理语言.pptVIP

  • 4
  • 0
  • 约2.01万字
  • 约 180页
  • 2019-09-06 发布于广东
  • 举报
使用LIKE来匹配字符串各部分 LIKE运算符可以这样使用: FROM table WHERE column [NOT] LIKE pattern 使用LIKE 小结 SQL标准对于模式匹配表达式提供了两种通配符:%(它与任意的字符集合都匹配,包括不包含字符的字符集合)和_(它与任意单个字符相匹配)。程序清单4.22中的查询将会返回所有以“M”开头的人名的数据。 使用LIKE 示例1 使用LIKE子句的查询 SELECT empno, ename, sal, job FROM emp WHERE ename LIKE M% EMPNO ENAME SAL JOB ---------- ---------- ---------- --------- 7654 MARTIN 1250 SALESMAN 7934 MILLER 1300 CLERK DISTINCT选择惟一值 雇员表emp中包含了相同工种(job),如果需要一个关于数据库中所有工种的简单的清单,那么类似于程序下面的查询将不起作用。程序清单4.25: SELECT job FROM emp JOB --------- CLERK SALESMAN SALESMAN MANAGER DISTINCT选择惟一值 可以看到,所有的工种都列在清单中,但有的工种多次重复出现。SQL提供了DISTINCT运算符,可以将程序清单中的重复值去除。 一般来说,DISTINCT运算符的使用方法如下: SELECT [DISTINCT] select_list FROM table [WHER expression] [ORDER BY expression] DISTINCT选择惟一值 使用DISTINCT运算符,删除了的重复值。只返回工种每一个值的一次出现。程序清单4.26: SELECT DISTINCT job FROM emp JOB --------- ANALYST CLERK MANAGER PRESIDENT SALESMAN DISTINCT 示例 如果程序清单中提供了多列,这些列中值的每一种单独的组合都将被选定。程序清单4.25中包含了数据库中所有的工资和工种数据。程序清单4.26中包含了使用DISTINCT删除的重复的工作工资和工种的清单。 DISTINCT 示例 检索数据库中所有的工资和工种 SELECT sal, job FROM emp SAL JOB ---------- --------- 1250 SALESMAN 1250 SALESMAN 1500 SALESMAN 1100 CLERK 1100 CLERK DISTINCT 示例 检索数据库中所有的工资和工种 SELECT DISTINCT sal, job FROM emp SAL JOB ---------- --------- 1100 CLERK 1250 SALESMAN 1500 SALESMAN 聚集函数 有许多的聚集函数可以在SQL中使用。它们不是要在数据库中的单个字段内容上操作,而是在查询返回的一组值上操作。举例来说,它们允许计算表中与具体标准相匹配的行的数目,也允许你计算表某一列的值的平均数。 聚集函数 这些函数可以处理表中所有的行、用WHERE语句选择的一个表中行的子集或用GROUP BY子句组织的一组所选数据。聚集函数的使用方法如下: SELECT function(column) FROM table [WHERE condition] 字符串函数 续… 字符串长度 在MS SQL Server中是使用len函数,在Oracle中使用length函数。 MS SQL Server测试实例: select len (abcd) value 结果:4 Oracle测试实例: select length (abcd) value from dual 结果:4 字符串函数 续… 大小写转换 lower,upper 在MS SQL Server和Oracle中将字符串转换小写函数lower,转换成大小的函数是upper。 MS SQL Server测试实例: select lower (aBCd) value 结果:abcd select upper (aBCd) value 结果:ABCD Oracle测试实例: select lower (aBCd) value from dual 结果:abc

文档评论(0)

1亿VIP精品文档

相关文档