函数整理(TSQL版)
一、数学函数
1。求绝对值
ABS()函数用来返回一个数值的绝对值。SELECTABS(5。38)ASabsValue;
2。求指数
POWER()函数是用来计算指数的函数。该函数接受两个参数,第一个参数为待求幂的表达式,第二个参数为幂。SELECTPOWER(5,0。5)ASpowerValue1,POWER(5,2)ASpowerValue2,POWER(5,3)ASpowerValue3;
3。求平方根
SQRT()函数是用来计算平方根的函数。该函数接受一个参数,这个参数为待计算平方根的表达式。SELECTSQRT(9)ASsqrtValue1,SQRT(3)ASsqrtValue2;
4。求随机数SELECTRAND(9527)randValue;
5。舍入到最大整数SELECTCEILING(56。67)ceilingValue1,CEILING(56。67)ceilingValue2;
6。舍入到最小整数SELECTFLOOR(56。67)floorValue1,FLOOR(56。67)floorValue2;
7。四舍五入
ROUND()函数也是用来进行数值四舍五入的。SELECTROUND(56。67,0)roundValue1,ROUND(56。67,1)roundValue2,ROUND(56。67,0)roundValue3;
8。求正弦值SELECTSIN(56。67)sinValue;
9。求余弦值SELECTCOS(56。67)cosValue;
10。求反正弦值SELECT156。67,ASIN(156。67)asinValue;
11。求反余弦值SELECT156。67,ACOS(156。67)acosValue;
12。求正切值SELECTTAN(56。67)tanValue;
13。求反正切值SELECTATAN(56。67)atanValue;
14。求2个变量的反正切SELECTATN2(56。67,2)atn2Value;
15。求余切SELECTCOT(56。67)cotValue;
16。求圆周率值SELECTPI()pi;
17。弧度制转换为角度制SELECTDEGREES(56。67)degreesValue;
18。角度制转换为弧度制SELECTRADIANS(56。67)radiansValue;
19。求符号
SIGN()函数用来返回一个数值的符号,如果数值大于0则返回1,如果数值等于0则返回0,如果数值小于0则返回1。SELECTSIGN(13)signValue1,SIGN(31)signValue2,SIGN(0)signValue3;
20。求自然对数
LOG()函数用来计算一个数的自然数值。SELECTLOG(56。67)logValue;
21。求以10为底的对数SELECTLOG10(56。67)log10Value;
二、字符串函数
1。计算字符串长度SELECTLEN(abc);
2。字符串转换为小写SELECTLOWER(A);
3。字符串转换为大写SELECTUPPER(a);
4。截去字符串左侧的空格SELECTLTRIM(a);
5。截去字符串右侧空格SELECTRTRIM(a);
6。截去字符串两侧的空格SELECTRTRIM(LTRIM(a));
7。取子字符串
SUBSTRING(string,startposition,length)SELECTabcdef,SUBSTRING(abcdef,2,3);
8。计算子字符串的位置SELECTCHARINDEX(ly,Kelly),CHARINDEX(m,Smith);
9。从左侧开始取子字符串
LEFT(string,length)SELECTLEFT(abcdef,3);
10。从右侧开始取子字符串
RIGHT(string,length)SELECTRIGHT(abcdef,3);
11。字符串替换
REPLACE(string,stringtobereplace,stringtoreplace)SELECTREPLACE(abcdef,,);
12。得到字符的ASCII码
ASCII()函数用来得到一个字符的ASCII码,它有且只有一个参数,这个参数为待求ASCII码的字符,如果参数为一个字符串则函数返回第一个字符的ASCII码。SELECTASCII(a),ASCII(abc);
13。得到一个ASCII码数字对应的字符
与ASCII()函数正好相反,获取得到一个字符的ASCII码。SELECTCHAR(56)char1,CHAR(90)char2,CHAR(ASCII(a))char3;
14。转换为整数SELECTCEILING(90。021)ceilingValue;
15。发音匹配度
有的时候我们并不知道一个人姓名的准确拼写,只知道它的发音,这是在公安、医疗、教育等系统中是经常需要的功能。
SELECTSOUNDEX(jack)jackSoundexValue,SOUNDEX(jeck)jeckSoundexValue,SOUNDEX(joke)jockSoundexValue,SOUNDEX(juke)jukeSoundexValue,SOUNDEX(look)lookSoundexValue,SOUNDEX(jobe)jobeSoundexValue;
DIFFERENCE()用来简化两个字符串的发音相似度比较高,它可以计算两个字符串的发音特征值,并且比较它们,然后返回一个0至4之间的一个值来反映两个字符串的发音相似度,这个值越大则表示两个字符串发音思想度越大。SELECTDIFFERENCE(Kerry,Merry)diffValue1,DIFFERENCE(Jim,Merry)diffValue2;
三、日期时间函数
1。取得当前日期时间的函数GETDATE()SELECTGETDATE();SELECTCONVERT(VARCHAR(50),GETDATE(),101)AS当前日期,CONVERT(VARCHAR(50),GETDATE(),108)AS当前时间;
2。日期增减SELECTGETDATE(),DATEADD(YEAR,3,GETDATE())AStime1,DATEADD(QUARTER,20,GETDATE())AStime2,DATEADD(MONTH,68,GETDATE())AStime3,DATEADD(WEEK,1000,GETDATE())AStime4;
3。计算日期差额
SELECTGETDATE(),DATEDIFF(YEAR,1992060100:00:00,GETDATE())年份,DATEDIFF(QUARTER,1992060100:00:00,GETDATE())季度,DATEDIFF(MONTH,1992060100:00:00,GETDATE())月份,DATEDIFF(DAYOFYEAR,1992060100:00:00,GETDATE())每年的某一日,DATEDIFF(DAY,1992060100:00:00,GETDATE())日期,DATEDIFF(WEEK,1992060100:00:00,GETDATE())星期,DATEDIFF(WEEKDAY,1992060100:00:00,GETDATE())工作日,DATEDIFF(HOUR,1992060100:00:00,GETDATE())小时,DATEDIFF(MINUTE,1992060100:00:00,GETDATE())分钟,DATEDIFF(SECOND,1992060100:00:00,GETDATE())秒;
4。计算一个日期是星期几
SELECTGETDATE(),DATENAME(YEAR,GETDATE())年份,DATENAME(QUARTER,GETDATE())季度,DATENAME(MONTH,GETDATE())月份,DATENAME(DAYOFYEAR,GETDATE())每年的某一日,DATENAME(DAY,GETDATE())日期,DATENAME(WEEK,GETDATE())星期,DATENAME(WEEKDAY,GETDATE())工作日,DATENAME(HOUR,GETDATE())小时,DATENAME(MINUTE,GETDATE())分钟,DATENAME(SECOND,GETDATE())秒,DATENAME(MILLISECOND,GETDATE())毫秒;
5。取得日期的指定部分
DATEPART()函数的返回值是数字而DATENAME()函数则会将尽可能地以名称的方式作为返回值。
SELECTGETDATE(),DATEPART(YEAR,GETDATE())年份,DATEPART(QUARTER,GETDATE())季度,DATEPART(MONTH,GETDATE())月份,DATEPART(DAYOFYEAR,GETDATE())每年的某一日,DATEPART(DAY,GETDATE())日期,DATEPART(WEEK,GETDATE())星期,DATEPART(WEEKDAY,GETDATE())工作日,DATEPART(HOUR,GETDATE())小时,DATEPART(MINUTE,GETDATE())分钟,DATEPART(SECOND,GETDATE())秒,DATEPART(MILLISECOND,GETDATE())毫秒;
四、其他函数
1。类型转换
CAST(expressionASdatatype)
CONVERT(datatype,expression)SELECTCAST(30ASINT)ASv1,CONVERT(DECIMAL,3。1415726)ASv2,CONVERT(DATETIME,2008080808:09:10)ASv3;
2。空值处理
COALESCE(expression,value1,value2,valuen)SELECTCOALESCE(,GETDATE())v1,COALESCE(NULL,GETDATE())v2,COALESCE(NULL,20080808,GETDATE())v3;
NULLIF()函数
NULLIF(expression1,expression2)
DECLAREnullIfExpressionDATETIMENULL;SELECTNULLIF(1981032200:00:00。0,GETDATE())v1,NULLIF(GETDATE(),1981032200:00:00。0)v2,NULLIF(nullIfExpression,GETDATE())v3,NULLIF(GETDATE(),nullIfExpression)v4,NULLIF(nullIfExpression,nullIfExpression)v5;
3。CASE函数
CASEexpressionWHENvalue1THENreturnvalue1WHENvalue2THENreturnvalue2WHENvalue3THENreturnvalue3ELSEdefaultreturnvalueEND
DECLAREcaseNameNVARCHAR(100)TONY;SELECT(CASEcaseNameWHENTONYTHENTonyWHENMILITHENMiLiELSEOtherEND)ASName;
DECLAREcaseAgeINT20;SELECT(CASEWHENcaseAge60THEN老人WHENcaseAge30THEN中年WHENcaseAge18THEN壮丁ELSE小屁孩END)AS称谓;
4。PATINDEX()函数SELECTTom,PATINDEX(m,Tom)UNIONSELECTLily,PATINDEX(m,Lily);
5。REPLICATE()函数SELECTJim,REPLICATE(Jim,1)UNIONSELECTTony,REPLICATE(Tony,2);
6。REVERSE()字符串颠倒SELECTJim,REVERSE(Jim)UNIONSELECTTony,REVERSE(Tony);
7。ISDATE()函数
ISDATE()函数用来确定输入表达式是否为有效日期。如果输入表达式是有效日期,那么ISDATE返回1;否则,返回0。
ISDATE(expression)
SELECTISDATE(NULL)ASd1,ISDATE(13433425)ASd2,ISDATE(1995101a)ASd3,ISDATE(19920808)ASd4,ISDATE(12395)ASd5,ISDATE(1995101)ASd6,ISDATE(19920808)ASd7,ISDATE(Abc)ASd8;
8。ISNUMERIC()函数
ISNUMERIC(expression)函数用来确定表达式是否为有效的数值类型。如果输入表达式的计算值为有效的整数、浮点数、money或decimal类型时,ISNUMERIC返回1;否则返回0。
SELECTISNUMERIC(NULL)ASd1,ISNUMERIC(13433425)ASd2,ISNUMERIC(30a。8)ASd3,ISNUMERIC(19920808)ASd4,ISNUMERIC(12395)ASd5,ISNUMERIC(3E3)ASd6,ISNUMERIC(19920808)ASd7,ISNUMERIC(30。3)ASd8;
9。辅助功能函数
APPNAME()函数返回当前会话的应用程序名称;
CURRENTUSER函数(注意这个函数不能带括号调用)返回当前登陆用户名;
HOSTNAME()函数返回工作站名。SELECTAPPNAME()AppName,CURRENTUSERCurrentUser,HOSTNAME()HostName,NEWID()UUID;
蔷薇花开如诗如画美了人间蔷薇花开,如诗如画,美了人间。蔷薇花有单瓣、重瓣之分,颜色有粉红,也有白色。花开时颜色艳丽,粉的骄傲,红的俏丽,白的雅致。尤其重瓣的蔷薇花,常常七至十朵为一簇,密密……
长安汽车发动机怎么样(现在的长安汽车质量怎么样)新能源汽车与传统燃油汽车之间的争论由来已久,对于谁将占据C位这个问题,大家也是各持一词。在我们看来,新能源汽车将会是未来汽车市场的中坚力量,这没有任何置疑,但现阶段谈到全面普及……
企业发展要避免盲目扩张如果用一句话形容上市公司正邦科技眼下的处境,那就是屋漏偏逢连夜雨,船迟又遇打头风。继预告2022年业绩大幅亏损后,已处于资不抵债状态的正邦科技近期又被多地法院列为失信被执行人。……
下水道堵了怎么办(厕所下水道堵塞怎么疏通)欢迎点击主页,我们iColor爱客装修头条号,了解更多装修改造知识!(此处已添加小程序,请到今日头条客户端查看)前些天,小编突然发现家里卫生间下水不畅,一洗澡淋浴房内就容……
苹果屏幕多少钱(苹果手机换内外屏要多少钱)大屏智能手机时代,屏幕是最容易损坏的部件,也是整个硬件成本中的大头,所以官方维修价格通常很高。尤其是iPhone手机,保外换个屏幕的价格,几乎可以买个中端安卓手机了。所以以往许……
脚跟疼是怎么回事(女性右脚后跟疼痛怎么治疗)最近几年人们的生活条件越来越好,很多人都更加重视自己的身体健康了,以前胳膊腿疼忍忍就过去了,现在很多人碰到点小毛病都会毫不犹豫找医生看看。今天给大家说的也是一种常见症状脚……
怀孕了为什么老放屁(怀孕7周老是放屁怎么回事)女人怀孕后,其实多半都是开心和幸福的,虽说孕期会有孕吐、便秘、嗜睡等厌烦的妊娠反应,但其实过多的点还是在宝宝身上,一心等待着宝宝健康的成长,对于孕妈来说是最幸福的事情。虽……
贵州债务为什么居高不下贵州省是中国西南地区的一个省份,近年来以基建投资拉动经济发展,取得了较快的增长速度,但也积累了较高的债务负担。2020年贵州宽口径债务率排名全国第四,经济财政实力薄弱,中央补助……
今年流行的凉鞋,很适合340岁的女人,舒适百搭还特显气质冬天满大街各式各样的靴子,相信你也被种草了很多款式吧。但是季节更替才是万物的规律,春夏季节的到来,鞋界的一把手已经换成凉鞋了。凉鞋是因为露脚面积多,显得清凉而得名的,但现……
丁俊晖历届世锦赛盘点,内战无败绩,对阵霍金斯没赢过2023年斯诺克世锦赛资格赛全部战罢,16位选手通过重重考验拿到克鲁斯堡正赛门票,中国名将丁俊晖近几年状态不佳,世界排名一度跌落至第34,本赛季丁俊晖状态有所回升,拿到了202……
酸奶每天喝多少最好(一天喝1000毫升酸奶会怎样)酸奶中含有大量的乳酸菌,当它从喉咙、食道流过进入肠道时,会为肠道滋生繁殖大量的益生菌,有利于维持肠道菌群的生态平衡。酸奶的好处1、酸奶是将牛奶中的乳糖发酵成乳酸而成……
想要成为老板并不是一个梦,创业之路实现自己的理想当我们成为老板的时候,很多东西就可以自己做决定了,因为老板就是要自己创业,而且我们在创业的时候也可以做自己想要做的事情,但是如果我们去帮别人工作,那么就需要去完成别人的任务,这……