SQL合计函数、日期与时间函数、代数函数、指数与对数函数等总结
1、合计函数
1)count(*) 返回行数
2)count(distinct colname) 返回指定列中唯一值的个数
3)sum(colname/expression) 返回指定列或表达式的数值和;
4)sum(distinct colname) 返回指定列中唯一值的和
5)avg(colname/expression) 返回指定列或表达式中的数值平均值
6)avg(distinct colname) 返回指定列中唯一值的平均值
7)min(colname/expression) 返回指定列或表达式中的数值最小值
8)max(colname/expression) 返回指定列或表达式中的数值最大值
2、日期与时间函数
1)day(date/datetime expression) 返回指定表达式中的当月几号
2)month(date/datetime expression) 返回指定表达式中的月份
3)year(date/datetime expression) 返回指定表达式中的年份
4)weekday(date/datetime expression) 返回指定表达式中的当周星期几
5)date(not date expression) 返回指定表达式代表的日期值
6)today 返回当前日期的日期值
7)current[first to last] 返回当前日期的日期时间值
8)colname/expression units precision 返回指定精度的指定单位数
9)mdy(month,day,year) 返回标识指定年、月、日的日期值
10)datetime(date/datetime expression)first to last 返回表达式代表的日期时间值
11)interval(date/datetime expression)first to last 返回表达式代表的时间间隔值
12)extend(date/datetime expression,[first to last])返回经过调整的日期或日期时间值
to_char函数将datetime和date值转化为字符值。
to_date函数将字符值转化为datetime类型的值。例to_date(“1978-10-07 10:00” ,”%y-%m-%d %h:%m)
例子1、和units合用,指定日期或时间单位(year,month,day,hour,minute,nd,fraction):
let tmp_date = today + 3 units day
例子2、let tmp_date = mdy(10,30,2002) – 2002-10-30
例子3、let tmp_date = today + interval(7) day to day –当前时间加上7天;
注:该功能与1相似;
例子4、extend转换日期或日期时间值
let tmp_inthour = extend(datetime1,hour to hour)
3、代数函数
1)abs(colname/expression): 取绝对值
2)mod(colname/expression,divisor) 返回除以除数后的模(余数)
3)pow(colname/expression,exponent) 返回一个值的指数冥
例子:let tmp_float = pow(2,3) –8.00000000
4)root(colname/expression,[index]) 返回指定列或表达式的根值
5)sqrt(colname/expression) 返回指定列或表达式的平方根值
6)round(colname/expression,[factor]) 返回指定列或表达式的圆整化值
7)trunc(colname/expression,[factor]) 返回指定列或表达式的截尾值
说明:上两者中factor指定小数位数,若不指定,则为0;若为负数,则整化到小数点左边;
注:round是在指定位上进行4舍5入;trunc是在指定位上直接截断;
let tmp_float = round(4.555,2) –4.56
let tmp_float = trunc(4.555,2) –4.55
4、指数与对数函数
1)exp(colname/expression) 返回指定列或表达式的指数值
2)logn(colname/expression) 返回指定列或表达式的自然对数值
3)log10(colname/expression) 返回指定列或表达式的底数位10的对数值
5、三角函数
1)cos(radian expression) 返回指定弧度表达式的余弦值
2)sin(radian expression) 正弦
3)tan(radian expression) 正切
4)acos(radian expression) 反余弦
5)asin(radian expression) 反正弦
6)atan(radian expression) 反正切
7)atan2(x,y) 返回坐标(x,y)的极坐标角度
6、统计函数
1)range(colname) 返回指定列的最大值与最小值之差 = max(colname)-min(colname)
2)variance(colname) 返回指定列的样本方差;
3)stdev(colname) 返回指定列的标准偏差;
7、字符串处理函数:
lower,将字符串中每个大写字母转换为小写字母
upper,将字符串中每个小写字母转换为大写字母
initcap,将字符串中每个词的首写字母转换成大写
replace,将字符串中的某一组字符转换成其他字符,例replace(col,”each”,”eve”)
substr,返回字符串中的某一部分,例substr(col,1,2)
substring,返回字符串中的某一部分,例substring(col,from 1 to 4)
8、其他函数
1)user 返回当前用户名
2)hex(colname/expression) 返回指定列或表达式的十六进制值
3)length(colname/expression) 返回指定字符列或表达式的长度
4)trim(colname/expression) 删除指定列或表达式前后的字符
hex,返回表达式的十六进制数
round,返回表达式的四舍五入值
trunc,返回表达式的截断值
length,计算表达式的长度
user,返回执行查询的用户的用户名(登陆帐户名)
today,返回当前日期
dbservername,返回服务器的名称,同sitename
dbinfo,返回数据库的相关信息
decode,函数来将一个具有一个值的表达式转换为另一个值
decode(test,a,a_value,b,b_value,c,c_value……),decode函数不支持text和byte类型。
上一篇: SQLServer优化50法
下一篇: SQL查询语句之UNION常见错误