ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Sql函数类型以及表达式

2022-06-15 00:04:29  阅读:141  来源: 互联网

标签:返回 字符 函数 10 expr select Sql 表达式


   

SQL中包含以下几种类型的函数:

 

聚合函数 它对其应用的每个行集返回一个值。

AVG(表达式) 返回表达式中所有的平均值。仅用于数字列并自动忽略NULL值。


COUNT(表达式) 返回表达式中非NULL值的数量。可用于数字和字符列。 COUNT(*) 返回表中的行数(包括有NULL值的列)。


MAX(表达式) 返回表达式中的最大值,忽略NULL值。可用于数字、字符和日期时间列。


MIN(表达式) 返回表达式中的最小值,忽略NULL值。可用于数字、字符和日期时间列。


SUM(表达式) 返回表达式中所有的总和,忽略NULL值。仅用于数字列。

日期函数

由于日期不能直接执行算术函数,所以日期函数就十分有用。

  当前系统日期、时间

    select getdate() 

 

 dateadd  在向指定日期加上一段时间的基础上,返回新的 datetime 值

   例如:向日期加上2天

   select dateadd(day,2,'2004-10-15')  --返回:2004-10-17 00:00:00.000

 

 datediff 返回跨两个指定日期的日期和时间边界数。

   select datediff(day,'2004-09-01','2004-09-18')   --返回:17

 

 datepart 返回代表指定日期的指定日期部分的整数。

  select DATEPART(month, '2004-10-15')  --返回 10

 

 datename 返回代表指定日期的指定日期部分的字符串

   select datename(weekday, '2004-10-15')  --返回:星期五

 

 day(), month(),year() --可以与datepart对照一下

select 当前日期=convert(varchar(10),getdate(),120)

,当前时间=convert(varchar(8),getdate(),114)

select datename(dw,'2004-10-15')

select 本年第多少周=datename(week,'2004-10-15')

   ,今天是周几=datename(weekday,'2004-10-15')

 

数字函数 对数字值执行代数运算。

ABS(num_expr) 返回数值表达式的绝对值。


FLOOR(num_expr) 返回小于或等于数值表达式的最大整数


CEILING(num_expr) 返回大于或等于数值表达式的最小整数


PI() 返回常量值3.1415926535897931select


RAND([seed]) 随机返回的到0-1之间的近似浮点值,可以对seed指定为整数表达式(可选)。

 

ROUND(num_expr,length) 对数值表达式截取指定的整数长度,返回四舍五入后的值。


字符串函数 可用于binary 和varbinary数据类型列,但主要用于char和varchar数据类型。

 

Expr1+expr2 返回两个表达式的组合形式的字符串。注意int类型


LEN(char_expr) 返回字符表达式的长度。

 

LOWER(char_expr) 将字符表达式全部转换为小写。


LTRIM(char_expr) 返回删除掉前面空格的字符表达式。


REVERSE(char_expr) 反转字符表达式。

 

RIGHT(char_expr,int_expr) 返回从字符表达式最右端起根据指定的字符个数得到的字符。


RTRIM(char_expr) 返回删除掉其后空格的字符表达式。


SPACE(int_expr) 返回包含指定空格数的字符串。


SUBSTRING(char_expr,start,length) 返回从字符表达式的指定位置开始,截取指定长度得到的字符集。


UPPER(char_expr) 将字符表达式全部转换为大写

标签:返回,字符,函数,10,expr,select,Sql,表达式
来源: https://www.cnblogs.com/LFL2004211/p/16376866.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有