2011-08-02 47 views
17

是否有预定义的MySQL函数返回其参数值(MINIMUM(1,16) - > 1)的最小值
Mysql最小函数

更具体地说,我在我的一个mysql表中有一个time-on-site列。
每位访客都投票我的服务器每隔30秒进行更新:

UPDATE `mytable` SET `lastUpdate` = NOW() WHERE `id` = ?; 

,但我想更新也timeOnSite列如下:

UPDATE `mytable` SET `timeOnSite` = (
`timeOnSite` + MINIMUM( 
        TIMESTAMPDIFF(SECOND, lastUpdate, NOW()), 30 
       ) 
), 
`lastUpdate` = NOW() WHERE `id` = ?; 

但问题是,有没有这样的MINIMUM函数,而我在MySQL手册中找不到它。

+0

在手册中找到答案的问题引发了不是很明显的关键字“最少” – tsds

回答

31

这是因为它的名为LEAST(),以避免与聚合函数MIN()混淆。

+1

是的,这个工作! (SELECT LEAST(1,15) - > 1) – tsds