SQL常用函数,整理

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一数学函数

1,求绝对值ABS()

2,求指数POWER(x,y);

3,求平方根SQRT()

select FWeight, SQRT(FWeight) from t_person;

4 求随机数

A,mysql RAND()select rand();

B,sqlserver rand() ,rand(x); select rand(), select rand(9527)支持种子

5舍入到最大整数Ceiling()

select FWeight, ceiling(FWeight), ceiling(FWeight * -1) from t_person;

6舍入到最小整数floor()

7,四舍五入round(m,d) m为四舍五入的数值,d为计算精度(特别地d还可以为负值)如36.63精度-1为40

Round(m)为m值0精度

8求正弦值sin(m); select sin(1) from t_person

求余弦值cos(m);

求返正弦值asin(m);

求反余弦acos(m);

9求正切值tan(m) 反正切atan(m)

求余切cotm()

10求圆周率PI();

11.弧度转换为角度degrees(m);角度转换为弧度制radians()

12求符号sign();(符号函数)

13 求整除余数mod(m,d);m为除数d 为被除数(sqlserver中直接用%)14,求自然对数LOG(m);

求10为底得对数LOG10();

二字符串函数

1 计算字符串长度length(m); select length(FName) from t_person

Sqlserver中为len();

2字符串转换为小写Lower(m)

字符串转换为大写UPPER(m)

3截去字符串左侧空格ltrim(m);

截去字符串右侧空白rtrim(m);

截去字符串两侧空白trim(m)

5取子字符串substring(string,start_position,length);

6计算子字符串的位置instr(string, substring);若不存在子字符串则返回0

7从左侧开始取字符串Left(string, length);

从右侧开始取字符串Right(string, length);

8字符串替换replace(string,string_tobe_replace, string_to_replace);

9得到字符的ASCII码ASCII(m)如果参数为字符串则返回第一个字符的Ascii 码

select ASCII('a') from t_person

10得到ascii码数字对应的字符char();

select char(20) from t_person

三日期时间函数

1,取得当前系统时间now();select now();now函数还有sysdate(),current_timestamp等别名select now(), sysdate(),current_timestamp; SQLSERVER 采用getdate()

2 日期增减

Date_add(date,interval expr type);date为待计算的日期,expr为进行加法运算的增量,可以是数值型或者字符串类型,取决与type的取值,DATE_SUB() SQLSERVER :dateadd(datepart, number, date);date为待计算的日期

3计算日期差额

DATEDIFF(date1,date2);

SQLSERVER:datediff(datepart, startdae, edddate);datepart指明计算差额时使用的单位

4计算一个日期是星期几

DAYNAME(date);

SQLSERVER :DATENAME(datepart, date);

5取得日期的指定部分

DATE_FORMAT(date, format)date为计算的日期值,format为格式化字符串SQLSERVER:DATENAME(depart date) DATEPART(depart,date)

四其他函数

1,类型转换

Cast(expression ad type)//符合ANSI SQL 99

Conbert(expression, type)//符合ODBC标准

其中expression为待进行转换的表达式,type为转换的目标类型。SQLSERVER:

Cast(expression ad type)//符合ANSI SQL 99

Conbert(type, expression)//符合ODBC标准.参数位置正好与上面相反

2 空值处理

Coalesce(expression, value1, value2,…,valuen); 第一个参数为带检测的表达式。如果expression不为空值返回expression否则判断后面的值,返回其中第一个不为空的值

// 简化版

:IFNULL(expression,value);

NULLIF(expression1, expression2);如果两个表达式不等价则返回第一个expression的值,如果两个表达式等价则返回第一个类型的空值

4CASE()与流程控制相似

五特有的函数

1,MYSQL

1 If(expr1, expr2,expr3)如果expr1为真则返回expr

2 否则返回expr3

2 conv(N,from_base, to_base)进制转换。将N从from_base转换到to_base进制(范围为2到36)如果to_base是负数,则N被看作是一个有符号数,

3 填充函数

LPAD(str, len, padstr)

RPAD (str, len, padstr)

用字符串padstr的值对str进行左(右)填充到len个字符长度然后返回str,如果str的长度大雨len则将其裁剪到len个字符

4 repeat(str,count)得到重复了count次str的字符串

5字符串颠倒:reverse(string)

select FName, REVERSE(FName) from t_person;

(Tom moT)//执行后结果

6计算集合的最大,最小值,greatest(),least();

7辅助功能函数

Version()//一字符串形式返回mysql服务器版本

User()//返回当前用户名别名system_user(),session_uer();

MD5(string) SHA1(string)计算md5和sha1

相关文档
最新文档