`

数据处理函数

    博客分类:
  • sql
阅读更多

数据处理函数

1,计算字符串长度

主流数据库系统都提供了计算字符串长度的函数,在MYSQL、Oracle、DB2中这个函数
名称为LENGTH,而在MSSQLServer中这个函数的名称则为LEN。这个函数接受一个字符串类
型的字段值做为参数,返回值为这个字符串的长度。下面的SQL语句计算每一个名称不为空
的员工的名字以及名字的长度:

MYSQL、Oracle、DB2: 
SELECT FName, LENGTH(FName)  AS namelength FROM T_Employee  
WHERE FName IS NOT  NULL 
MSSQLServer: 
SELECT FName, LEN(FName)    AS namelength FROM T_Employee  
WHERE FName IS NOT  NULL 
FName  namelength 
Tom  3 
Jerry  5 
Jane  4 
Tina  4 
Smith  5 
John  4 
Kerry  5 
Stone  5 

 2,获取字符串的子串

  主流系统都提供了取得字符串的子串的函数,在MYSQL、MSSQLServer中这个函数名称
为SUBSTRING,而在Oracle、DB2这个函数名称为SUBSTR。这个函数接受三个参数,第一个
参数为要取的主字符串,第二个参数为字串的起始位置(从1开始计数),第三个参数为字串
的长度。下面的SQL语句取得每一个名称不为空的员工的名字以及名字中从第二个字符开始、
长度为3的字串:

MYSQL、MSSQLServer: 
SELECT FName, SUBSTRING(FName,2,3)    FROM T_Employee  
WHERE FName IS NOT NULL 
Oracle、DB2: 
SELECT FName, SUBSTR(FName,2,3)    FROM T_Employee 
WHERE FName IS NOT NULL
  执行完毕我们就能在输出结果中看到下面的执行结果: 
FName  namelength 
Tom  om 
Jerry  er 
Jane  an 
Tina  in 
Smith  mi 
John  oh 
Kerry  er 
Stone  to  

 3,函数嵌套使用

  多个函数还可以嵌套使用。主流系统都提供了计算正弦函数值的函数SIN和计算绝对值
的函数ABS,它们都接受一个数值类型的参数。下面的SQL语句取得每个员工的姓名、年龄、
年龄的正弦函数值以及年龄的正弦函数值的绝对值,其中计算“年龄的正弦函数值的绝对值”
时就要使用嵌套函数,SQL语句如下:

SELECT FName,FAge, SIN(FAge) , ABS(SIN(FAge)) FROM T_Employee 
  执行完毕我们就能在输出结果中看到下面的执行结果: 
FName  FAge     Tom  25  -0.13235175009777303  0.13235175009777303 
Jerry  28  0.27090578830786904  0.27090578830786904 
Jane  23  -0.8462204041751706  0.8462204041751706 
Tina  25  -0.13235175009777303  0.13235175009777303 
Smith  28  0.27090578830786904  0.27090578830786904 
<NULL>  27  0.956375928404503  0.956375928404503 
John  23  -0.8462204041751706  0.8462204041751706 
Kerry  28  0.27090578830786904  0.27090578830786904 
Stone  22  -0.008851309290403876  0.008851309290403876 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics