2011-08-02 17 views
17

引数の値(MINIMUM(1,16) - > 1)の最小値
を返す定義済みのMySQL関数がありますか?Mysqlの最小関数

具体的には、私は自分のmysqlテーブルの1つにタイムオンサイトの列を持っています。
すべての訪問者をポーリング私のサーバーの更新を行うごとに30秒:

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

が、私はこのようにもtimeOnSite列を更新したいと思います:

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

しかし、問題はそのような存在しないということです最小限の関数であり、私はMySQLのマニュアルでそれを見つけることができませんでした。

+0

マニュアルで回答を見つける問題はあまり明白でないキーワード "least"から発生します – tsds

答えて

31

LEAST()と呼ばれるのは、集計関数MIN()との混同を避けるためです。

+1

はい、これは機能します! (SELECT LEAST(1,15) - > 1) – tsds