SQL是个ANSI标准。各数据库厂商根据该标准开发自己的数据库及语言。SQL Server 用的叫T-SQL。Oracle的叫PL/SQL。
稍微总结一下常用到的一些T-SQL的一些东西,想到哪写到哪,大神勿喷。
函数
1. 数学函数
MIN(COLUMN):最小值--聚合函数;
MAX(COLUMN):最大值--聚合函数;
AVG(COLUMN):平均值--聚合函数;
SUM(COLUMN):求和--聚合函数;
COUNT(COLUMN):求总数--聚合函数;
ABS(X):绝对值;
SQRT(X):平方根;
POWER(X,Y):开方;
EXP(X):指数;
LOG(X,Y):对数;
SIGN(X):求符号;
RAND([0]):返回0~1之间的随机float值,参数为空时自动输出随机值,相同参数返回的值相同;
FLOOR(X):返回小于或等于X值的最大整数;
CEILING(X):返回大于或等于X值的最小整数;
ROUND(X,LENGTH):四舍五入函数,length为正,则对X小数位数四舍五入,length为负,则对X从小数点左边length位起四舍五入,若length既为负数且其绝对值大于X整数部分 数字个数,则函数值为0;
2.字符串函数
Lower(XXX):将字符串转换成小写;
UPPER(XXX):将字符串转换成小写;
LTRIM(XXX):去做空格;
RTRIM(XXX):去右空格;
LEFT(XXX,Y):返回字符串总左边开始指定个数的字符;
RIGHT(XXX,Y):返回字符串总右边开始指定个数的字符;
LEN(XXX):返回字符串字符数;
DATALENGTH(XXX):返回传的字节数长度;
SUBSTRING(XXX, Y, Z):返回从字符串左边Y起数量为Z的字符串
REPLACE(XXX,YYY,ZZZ):用ZZZ替换XXX中出现的所有YYY字符;
STUFF(XXX, Y, Z, MMM):删除XXX指定位置Y开始指定长度Z的字符串,并在指定位置插入MMM;
REVERSE(XXX) :将指定的字符串的字符排列顺序颠倒;
3.转换函数
CAST(XXX AS DATATYPE):将XXX转换成其他数据类型;
CONVERT(DATATYPEB,XXX):将XXX转换成DATATYPEB
4.转换函数
GETDATE():获取当前时间;
--获取当前年月日 YY代表年,MM代表月,DD代表日,hh代表时,ss代表秒
year yy 1753--9999
quarter qq 1--4
month mm 1--12
day of year dy 1--366
day dd 1--31
week wk 1--53
weekday dw 1--7(Sunday--Saturday)
hour hh 0--23
minute mi 0--59
second ss 0--59
milisecond ms 0--999
DATEPART(qq,getdate()) :返回当前的qq(季度-整数);
DATENAME(qq,getdate()) :返回当前的qq(季度-字符);
DATEDIFF(dd,‘2011-7-7‘,getdate()) :获得两段时间相距的几年 yy,几月 mm,几日 dd ;
DATEADD(mm,-2,getdate()) :在当前时间上加上或减去年月日