date_add('2015-02-02',interval -46 day)
与postgresql中的相应语句是:
'2015-02-02' + -46 * interval '1 day'
但是,当我这样做时,我得到一个错误:
[Err] ERROR: invalID input Syntax for type interval: "2015-02-02"
如果我删除语句的-46 * interval’1 day’部分,它将按预期工作.
简化查询:
SELECT cd.date_sort_prequeue_start AS date,SUM(CASE WHEN cd.call_conclusion='Answered' THEN 1 ELSE 0 END) AS calls_answeredFROM data_warehouse.call_detail AS cd INNER JOIN data_warehouse.users_history AS uh ON cd.users_history_ID=uh.IDWHERE cd.date_sort_prequeue_start>= '2015-02-02' + (-46 * INTERVAL '1 day') AND cd.date_sort_prequeue_start<'2015-02-02' AND cd.call_type='I' AND uh.team='TeamOne'GROUP BY cd.date_sort_prequeue_startORDER BY cd.date_sort_prequeue_start;如果将字符串转换为日期,则可以解决问题:
'2015-02-02'::date + -46 * interval '1 day'
字符串本身是不明确的,因为有几种不同的类型来表示时间.
总结以上是内存溢出为你收集整理的postgresql – 类型interval的输入语法无效全部内容,希望文章能够帮你解决postgresql – 类型interval的输入语法无效所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)