該查詢與MySQL的工作並不在PostgreSQL工作:DATE_SUB確定與MySQL,KO在PostgreSQL
select ... from ... where (id = ... and (h > date_sub(now(), INTERVAL 30 MINUTE)))
的錯誤是:
Query failed: ERREUR: erreur de syntaxe sur ou près de « 30 »
任何想法?
該查詢與MySQL的工作並不在PostgreSQL工作:DATE_SUB確定與MySQL,KO在PostgreSQL
select ... from ... where (id = ... and (h > date_sub(now(), INTERVAL 30 MINUTE)))
的錯誤是:
Query failed: ERREUR: erreur de syntaxe sur ou près de « 30 »
任何想法?
DATE_SUB
是一個MySQL函數在PostgreSQL中不存在。
您可以(例如)使用;
NOW() - '30 MINUTES'::INTERVAL
......或者......
NOW() - INTERVAL '30' MINUTE
......或者......
NOW() - INTERVAL '30 MINUTES'
作爲替換。
的間隔文字需要單引號:
INTERVAL '30' MINUTE
你也可以使用常規的 「算術」:
and (h > current_timestamp - interval '30' minute)
嘗試使用類似:
select ...
from ...
where id = ...
and h > now() - INTERVAL '30 MINUTE'
不需要MySQL中的DATE_SUB,NOW() - INTERVAL'30'MINUTE也適用於MySQL。 – 2013-05-02 06:02:48