mysql 其他函数

DEFAULT(col_name)
函数使用说明:返回一个表列的默认值。若该列没有默认值则会产生错误。

FORMAT(X ,D)
函数使用说明:将数字 X 的格式写为 ‘#,###,###.##’, 以四舍五入的方式保留小数点后 D 位, 并将结果以字符串的形式返回。若 D 为 0, 则返回结果不带有小数点,或不含小数部分。

GET_LOCK(str ,timeout)
函数使用说明:设法使用字符串 str 给定的名字得到一个锁, 超时为 timeout 秒。若成功得到锁,则返回 1 ,若操作超时则返回 0 ( 例如 , 由于另一个客户端已提前封锁了这个名字 ), 若发生错误则返回 NULL ( 诸如缺乏记忆或线程 mysqladmin kill 被断开 ) 。假如你有一个用 GET_LOCK() 得到的锁,当你执行 RELEASE_LOCK() 或你的连接断开 ( 正常或非正常 ) 时,这个锁就会解除

INET_ATON(expr)
函数使用说明:给出一个作为字符串的网络地址的点地址表示,返回一个代表该地址数值的整数。地址可以是 4 或 8 比特地址。

INET_NTOA(expr)
函数使用说明:给定一个数字网络地址 (4 或 8 比特 ), 返回作为字符串的该地址的电地址表示

IS_FREE_LOCK(str)
函数使用说明:检查名为 str 的锁是否可以使用 ( 换言之 , 没有被封锁 ) 。若锁可以使用,则返回 1 ( 没有人在用这个锁 ), 若这个锁正在被使用,则返回 0 ,出现错误则返回 NULL ( 诸如不正确的参数 ) 。

IS_USED_LOCK(str)
函数使用说明:检查名为 str 的锁是否正在被使用 ( 换言之 , 被封锁 ) 。若被封锁,则返回使用该锁的客户端的连接标识符。否则返回 NULL 。

MASTER_POS_WAIT(log_name ,log_pos [,timeout ])
函数使用说明:该函数对于控制主从同步很有用处。它会持续封锁,直到从设备阅读和应用主机记录中所有补充资料到指定的位置。返回值是其为到达指定位置而必须等待的记录事件的数目。若从设备 SQL 线程没有被启动、从设备主机信息尚未初始化、参数不正确或出现任何错误,则该函数返回 NULL 。若超时时间被超过,则返回 -1 。若在 MASTER_POS_WAIT() 等待期间,从设备 SQL 线程中止,则该函数返回 NULL 。若从设备由指定位置通过,则函数会立即返回结果。

NAME_CONST(name ,value)
函数使用说明:返回给定值。 当用来产生一个结果集合列时 , NAME_CONST() 促使该列使用给定名称。

RELEASE_LOCK(str)
函数使用说明:解开被 GET_LOCK() 获取的,用字符串 str 所命名的锁。若锁被解开,则返回 1 ,若改线程尚未创建锁,则返回 0 ( 此时锁没有被解开 ), 若命名的锁不存在,则返回 NULL 。若该锁从未被对 GET_LOCK() 的调用获取,或锁已经被提前解开,则该锁不存在。

SLEEP(duration)
函数使用说明:睡眠 ( 暂停 ) 时间为 duration 参数给定的秒数,然后返回 0 。若 SLEEP() 被中断 , 它会返回 1 。 duration 或许或包括一个给定的以微秒为单位的分数部分。

UUID()
函数使用说明:返回一个通用唯一标识符 (UUID) , UUID 被设计成一个在时间和空间上都独一无二的数字。 2 个对 UUID() 的调用应产生 2 个不同的值,即使这些调用的执行是在两个互不相连的单独电脑上进行。

VALUES(col_name)
函数使用说明:在一个 INSERT … ON DUPLICATE KEY UPDATE … 语句中,你可以在 UPDATE 子句中使用 VALUES(col_name ) 函数,用来访问来自该语句的 INSERT 部分的列值。换言之, UPDATE 子句中的 VALUES(col_name ) 访问需要被插入的 col_name 的值 , 并不会发生重复键冲突。这个函数在多行插入中特别有用。 VALUES() 函数只在 INSERT … UPDATE 语句中有意义,而在其它情况下只会返回 NULL