2017-09-27 14 views
0

のための条件は、私は、MySQLに新しいですし、条件ならば、私は使用して、この基本的な問題を持っている場合:MySQLの時間差

このスクリプトは

SELECT IF(TIMESTAMPDIFF(SECOND,'2017-09-26 03:11:46',CURRENT_TIMESTAMP())< 1200 ,'yes','no') 

うまく動作しますが、ときに私、それが動作しませんこのよう

if (SELECT (TIMESTAMPDIFF(SECOND,'2017-09-26 03:11:46',CURRENT_TIMESTAMP())) < 1200) 
THEN 
SELECT 'YES' 

ELSE 
SELECT 'NO' 
+2

'if'だけストアド・プロシージャやトリガなどの、プログラミングブロックで許可されています。私はそれがSPに入れた場合 –

+0

は、だから、一番下のコードも動作していることを意味するのでしょうか? –

+0

。 。それは動作するはずです。私は愚かだ –

答えて

2

は、2番目の例では、ストアドプロシージャにする必要がありますそれを行います。最初の例は、標準DML文ですとストアドプロシージャと同じ構文を共有しません。

あなたはここにチェックした場合:

https://dev.mysql.com/doc/refman/5.7/en/if.html

あなたは、彼らが述べることがわかります。この明示的

The IF statement for stored programs implements a basic conditional construct.