三、 数学函数


a)函数 ABS(X)


函数使用说明:返回 X 的绝对值


b)函数 ACOS(X )


函数使用说明:返回 X 反余弦 , 即 , 余弦是 X 的值。若 X 不在 -1 到 1 的范围之内,则返回 NULL 。


c)函数 ASIN ( X )


函数使用说明:返回X 的反正弦,即,正弦为X 的值。若X若X 不在-1 到 1 的范围之内,则返回 NULL 。


d)函数ATAN(X )


函数使用说明:返回 X 的反正切,即,正切为 X 的值。


e)函数 ATAN(Y ,X ) , ATAN2(Y ,X )


函数使用说明:返回两个变量 X 及 Y 的反正切。 它类似于 Y 或 X 的反正切计


算 , 除非两个参数的符号均用于确定结果所在象限。


f)函数 CEILING(X ) CEIL(X )


函数使用说明:返回不小于 X 的最小整数值。


g)函数 COS(X )


函数使用说明:返回 X 的余弦,其中 X 在弧度上已知。


h)函数 COT(X )


函数使用说明:返回 X 的余切


i)函数 CRC32(expr )


函数使用说明:计算循环冗余码校验值并返回一个 32 比特无符号值。若参数为 NULL ,则结果为 NULL 。该参数应为一个字符串,而且在不是字符串的情况下会被作为字符串处理(若有可能)


j)函数 DEGREES(X )


函数使用说明:返回参数 X , 该参数由弧度被转化为度。


k)函数 EXP(X )


函数使用说明:返回 e 的 X 乘方后的值 ( 自然对数的底 ) 。


l)函数 FLOOR(X )


函数使用说明:返回不大于 X 的最大整数值 。


m)函数 FORMAT(X ,D )


函数使用说明:将数字 X 的格式写成 '#,###,###.##' 格式 , 即保留小数点后 D 位,而第 D 位的保留方式为四舍五入,然后将结果以字符串的形式返回


n)函数 LN(X )


函数使用说明:返回 X 的自然对数 , 即 , X 相对于基数 e 的对数


o)函数 LOG(X ) LOG(B ,X )


函数使用说明:若用一个参数调用,这个函数就会返回 X 的自然对数。


p)函数 LOG2(X )


函数使用说明:返回 X 的基数为 2 的对数。


q)函数 LOG10(X )


函数使用说明:返回 X 的基数为 10 的对数。


r)函数 MOD(N ,M ) , N % M N MOD M


函数使用说明: 模操作。返回 N 被 M 除后的余数。


s)函数 PI()


函数使用说明:返回 ? (pi) 的值。默认的显示小数位数是 7 位 , 然而 MySQL 内部会使用完全双精度值。


t)函数 POW(X ,Y ) , POWER(X ,Y )


函数使用说明:返回 X 的 Y 乘方的结果值。


u)函数 RADIANS(X )


函数使用说明:返回由度转化为弧度的参数 X , ( 注意 ? 弧度等于 180 度)。


v)函数 RAND() RAND(N )


函数使用说明:返回一个随机浮点值 v ,范围在 0 到 1 之间 ( 即 , 其范围为 0 ≤ v ≤ 1.0) 。若已指定一个整数参数 N ,则它被用作种子值,用来产生重复序列。


w)函数 ROUND(X ) ROUND(X ,D )


函数使用说明:返回参数 X , 其值接近于最近似的整数。在有两个参数的情况下,返回 X ,其值保留到小数点后 D 位,而第 D 位的保留方式为四舍五入。若要接保留 X 值小数点左边的 D 位,可将 D 设为负值。


x)函数 SIGN(X )


函数使用说明:返回参数作为 -1 、 0 或 1 的符号,该符号取决于 X 的值为负、零或正。


y)函数 SIN(X )


函数使用说明:返回 X 正弦,其中 X 在弧度中被给定。


z) 函数 SQRT(X )


函数使用说明: 返回非负数 X 的二次方根。


aa) 函数TAN(X )


函数使用说明: 返回 X 的正切,其中 X 在弧度中被给定。


bb) 函数TRUNCATE(X ,D )


函数使用说明: 返回被舍去至小数点后 D 位的数字 X 。若 D 的值为 0, 则结果


不带有小数点或不带有小数部分。可以将 D 设为负数 , 若要截去 ( 归零 ) X 小数点左起第 D 位开始后面所有低位的值


四、日期和时间函数


a)函数ADDDATE(date ,INTERVAL expr type ) ADDDATE(expr ,days )


函数使用说明: 当被第二个参数的 INTERVAL 格式激活后, ADDDATE() 就是 DATE_ADD() 的同义词。相关函数 SUBDATE() 则是 DATE_SUB() 的同义词。对于 INTERVAL 参数上的信息 ,请参见关于 DATE_ADD() 的论述。


b)函数 ADDTIME(expr ,expr2 )


函数使用说明: ADDTIME() 将 expr2 添加至 expr 然后返回结果。 expr 是一个时间或时间日期表达式,而 expr2 是一个时间表达式。


c)函数 CONVERT_TZ(dt ,from_tz ,to_tz )


函数使用说明: CONVERT_TZ() 将时间日期值 dt 从 from_tz 给出的时区转到 to_tz 给出的时区,然后返回结果值。关于可能指定的时区的详细论述,若自变量无效,则这个函数会返回 NULL


d)函数 CURDATE()


函数使用说明:将当前日期按照 'YYYY-MM-DD' 或 YYYYMMDD 格式的值返回,具体格式根据函数用在字符串或是数字语境中而定。


e)函数 CURRENT_DATE CURRENT_DATE()


函数使用说明: CURRENT_DATE 和 CURRENT_DATE() 是的同义词 .


f)函数 CURTIME()


函数使用说明: 将当前时间以 'HH:MM:SS' 或 HHMMSS 的格式返回, 具体格式根据函数用在字符串或是数字语境中而定。


g)函数 CURRENT_TIME, CURRENT_TIME()


函数使用说明: CURRENT_TIME 和 CURRENT_TIME() 是 CURTIME() 的同义词。


h)函数 CURRENT_TIMESTAMP, CURRENT_TIMESTAMP()


函数使用说明: CURRENT_TIMESTAMP 和 CURRENT_TIMESTAMP() 是 NOW() 的同义词


i)函数 DATE(expr )


函数使用说明: 提取日期或时间日期表达式 expr 中的日期部分。


j)函数 DATEDIFF(expr ,expr2 )


函数使用说明: DATEDIFF() 返回起始时间 expr 和结束时间 expr2 之间的天数。 Expr 和 expr2 为日期或 date-and-time 表达式。计算中只用到这些值的日期部分。


k)函数 DATE_ADD(date ,INTERVAL expr type ) DATE_SUB(date ,INTERVAL expr type )


函数使用说明:这些函数执行日期运算。 date 是一个 DATETIME 或 DATE 值,用来指定起始时间。 expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值。   Expr 是一个字符串 ; 对于负值的时间间隔,它可以以一个 ‘-’ 开头。 type 为关键词,它指示了表达式被解释的方式。


l)函数 DATE_FORMAT(date ,format )


函数使用说明:根据 format 字符串安排 date 值的格式。


m)函数 DAY(date )


函数使用说明: DAY() 和 DAYOFMONTH() 的意义相同


n)函数 DAYNAME(date )


函数使用说明:返回 date 对应的工作日名称。


o)函数 DAYOFMONTH(date )


 函数使用说明:返回 date 对应的该月日期,范围是从 1 到 31


 p)函数 DAYOFWEEK(date )


 函数使用说明:返回 date (1 = 周日 , 2 = 周一 , ..., 7 = 周六 ) 对应的工作日索引。这些索引值符合 ODBC 标准


 q)函数 DAYOFYEAR(date )


 函数使用说明:返回date 对应的一年中的天数,范围是从 1 到366 。


 r)函数 EXTRACT(type FROM date )


 函数使用说明: EXTRACT() 函数所使用的时间间隔类型说明符同 DATE_ADD() 或 DATE_SUB() 的相同 , 但它从日期中提取其部分,而不是执行日期运算。


 s)函数FROM_DAYS(N )


 函数使用说明: 给定一个天数   N , 返回一个 DATE 值。


 t)函数 FROM_UNIXTIME(unix_timestamp )ROM_UNIXTIME(unix_timestamp ,format )


 函数使用说明:返回'YYYY-MM-DD HH:MM:SS' 或YYYYMMDDHHMMSS 格式值的unix_timestamp 参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中。 若format 已经给出,则结果的格式是根据format 字符串而定。 format 可以包含同DATE_FORMAT() 函数输入项列表中相同的说明符。


 u)函数 GET_FORMAT(DATE|TIME|DATETIME, 'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL')


 函数使用说明:返回一个格式字符串。这个函数在同 DATE_FORMAT() 及 STR_TO_DATE() 函数结合时很有用


 v)函数 HOUR(time )


 函数使用说明:返回 time 对应的小时数。对于日时值的返回值范围是从 0 到 23


 w)函数 LAST_DAY(date )


 函数使用说明:获取一个日期或日期时间值,返回该月最后一天对应的值。若参数无效,则返回 NULL 。


 x)函数 LOCALTIME, LOCALTIME()


 函数使用说明: LOCALTIME 及 LOCALTIME() 和 NOW() 具有相同意义。


 y)函数 LOCALTIMESTAMP, LOCALTIMESTAMP()


 函数使用说明: LOCALTIMESTAMP 和 LOCALTIMESTAMP() 和 NOW() 具有相同意义。


 z)函数 MAKEDATE(year ,dayofyear )


 函数使用说明:给出年份值和一年中的天数值,返回一个日期。 dayofyear 必须大于 0 ,否则结果为 NULL 。


 aa) 函数 MAKETIME(hour ,minute ,second )


 函数使用说明: 返回由 hour 、 minute 和 second 参数计算得出的时间值


 bb)函数 CROSECOND(expr )


 函数使用说明:从时间或日期时间表达式 expr 返回微秒值,其数字范围从 0 到 999999 。


 cc)函数 MINUTE(time )


 函数使用说明:返回 time 对应的分钟数 , 范围是从 0 到 59 。


 dd)函数 MONTH(date )


 函数使用说明:返回 date 对应的月份,范围时从 1 到 12 。


 ee) 函数 MONTHNAME(date )


 函数使用说明: 返回 date 对应月份的全名


 ff)函数 NOW()


 函数使用说明:返回当前日期和时间值,其格式为 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS , 具体格式取决于该函数是否用在字符串中或数字语境中。


 gg)函数 PERIOD_ADD(P ,N )


 函数使用说明:添加 N 个月至周期 P ( 格式为 YYMM 或 YYYYMM) ,返回值的格式为 YYYYMM 。注意周期参数 P 不是 日期值。 


 hh)函数 PERIOD_DIFF(P1 ,P2 )


 函数使用说明:返回周期 P1 和 P2 之间的月份数。 P1 和 P2 的格式应该为 YYMM 或 YYYYMM 。注意周期参数 P1 和 P2 不是 日期值。


 ii)函数 QUARTER(date )


 函数使用说明:返回 date 对应的一年中的季度值,范围是从 1 到 4


 jj)函数 SECOND(time )


 函数使用说明:返回 time 对应的秒数 , 范围是从 0 到 59 。


 kk) 函数 SEC_TO_TIME(seconds )


 函数使用说明: 返回被转化为小时、 分钟和秒数的 seconds 参数值 , 其格式为 'HH:MM:SS' 或 HHMMSS ,具体格式根据该函数是否用在字符串或数字语境中而定


ll) 函数 STR_TO_DATE(str ,format )


函数使用说明:这是 DATE_FORMAT() 函数的倒转。它获取一个字符串 str 和一个格式字符串 format 。若格式字符串包含日期和时间部分,则 STR_TO_DATE() 返回一个 DATETIME 值, 若该字符串只包含日期部分或时间部分,则返回一个 DATE 或 TIME 值。


 mm) 函数 SUBDATE(date ,INTERVAL expr type ) SUBDATE(expr ,days )


 函数使用说明:当被第二个参数的 INTERVAL 型式调用时 , SUBDATE() 和 DATE_SUB() 的意义相同。对于有关 INTERVAL 参数的信息, 见有关 DATE_ADD() 的讨论。


 nn)函数 SUBTIME(expr ,expr2 )


 函数使用说明: SUBTIME() 从 expr 中提取 expr2 ,然后返回结果。 expr 是一个时间或日期时间表达式,而 xpr2 是一个时间表达式。


 oo)函数 SYSDATE()


 函数使用说明:返回当前日期和时间值,格式为 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS , 具体格式根据函数是否用在字符串或数字语境而定。


 pp)函数 TIME(expr )


函数使用说明:提取一个时间或日期时间表达式的时间部分,并将其以字符串形式返回。


 qq)函数 TIMEDIFF(expr ,expr2 )


 函数使用说明: TIMEDIFF() 返回起始时间 expr 和结束时间 expr2 之间的时间。 expr 和 expr2 为时间或 date-and-time 表达式 , 两个的类型必须一样。 


 rr) 函数TIMESTAMP(expr ) , TIMESTAMP(expr ,expr2 )


 函数使用说明: 对于一个单参数 , 该函数将日期或日期时间表达式 expr 作为日期时间值返回 . 对于两个参数 , 它将时间表达式 expr2 添加到日期或日期时间表达式 expr 中,将 theresult 作为日期时间值返回。


 ss)函数 TIMESTAMPADD(interval ,int_expr ,datetime_expr )


 函数使用说明:将整型表达式int_expr 添加到日期或日期时间表达式 datetime_expr 中。 int_expr 的单位被时间间隔参数给定,该参数必须是以下值的其中一个: FRAC_SECOND 、SECOND 、MINUTE 、 HOUR 、 DAY 、 WEEK 、 MONTH 、 QUARTER 或 YEAR 。可使用所显示的关键词指定Interval 值,或使用SQL_TSI_ 前缀。例如, DAY 或SQL_TSI_DAY 都是正确的


tt)函数 TIMESTAMPDIFF(interval ,datetime_expr1 ,datetime_expr2 )


 函数使用说明:返回日期或日期时间表达式 datetime_expr1 和 datetime_expr2 the 之间的整数差。其结果的单位由 interval 参数给出。 interval 的法定值同 TIMESTAMPADD() 函数说明中所列出的相同。


 uu)函数 TIME_FORMAT(time ,format )


 函数使用说明:其使用和 DATE_FORMAT() 函数相同 , 然而 format 字符串可能仅会包含处理小时、分钟和秒的格式说明符。其它说明符产生一个 NULL 值或 0 。


vv)函数 TIME_TO_SEC(time )


 函数使用说明:返回已转化为秒的 time 参数


 ww) 函数 TO_DAYS(date )


 函数使用说明:给定一个日期 date , 返回一个天数 ( 从年份 0 开始的天数 ) 。


 xx)函数 UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date )


 函数使用说明:若无参数调用,则返回一个 Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒数 ) 作为无符号整数。若用 date 来调用 UNIX_TIMESTAMP() ,它会将参数值以 '1970-01-01 00:00:00' GMT 后的秒数的形式返回。 date 可以是一个 DATE 字符串、一个 DATETIME 字符串、一个 TIMESTAMP 或一个当地时间的 YYMMDD 或 YYYMMDD 格式的数字。


yy) 函数 UTC_DATE, UTC_DATE()


函数使用说明:返回当前 UTC 日期值,其格式为 'YYYY-MM-DD' 或 YYYYMMDD ,具体格式取决于函数是否用在字符串或数字语境中。


 zz)函数 UTC_TIME, UTC_TIME()


 函数使用说明:返回当前 UTC 值,其格式为   'HH:MM:SS' 或 HHMMSS ,具体格式根据该函数是否用在字符串或数字语境而定。


 aaa)函数 UTC_TIMESTAMP, UTC_TIMESTAMP()


 函数使用说明:返回当前 UTC 日期及时间值,格式为 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS ,具体格式根据该函数是否用在字符串或数字语境而定


 bbb) 函数 WEEK(date [,mode ])


 函数使用说明:该函数返回 date 对应的星期数。 WEEK() 的双参数形式允许你指定该星期是否起始于周日或周一, 以及返回值的范围是否为从 0 到 53 或从 1 到 53 。若 mode 参数被省略,则使用default_week_format 系统自变量的值。


 ccc) 函数 WEEKDAY(date )


 函数使用说明:返回 date (0 = 周一 , 1 = 周二 , ... 6 = 周日 ) 对应的工作日索引   weekday index for


 ddd) 函数 WEEKOFYEAR(date )


 函数使用说明:将该日期的阳历周以数字形式返回,范围是从 1 到 53 。它是一个兼容度函数,相当于 WEEK(date ,3) 。


 eee)函数 YEAR(date )


 函数使用说明:返回 date 对应的年份 , 范围是从 1000 到 9999 。


 fff)函数 YEARWEEK(date ), YEARWEEK(date ,start )


 函数使用说明:返回一个日期对应的年或周。 start 参数的工作同 start 参数对 WEEK() 的工作相同。结果中的年份可以和该年的第一周和最后一周对应的日期参数有所不同。