我在通过触发器执行的函数中编写了以下查询。
SELECT report_date INTO logdate FROM agent_statistics WHERE agentid =
NEW.caller_id_name AND report_date = DATE(NEW.start_stamp);
SELECT COUNT(*) INTO outbound FROM cdr WHERE (caller_id_name =
NEW.caller_id_name AND direction = 'outbound' AND
DATE(NEW.start_stamp) = logdate);
SELECT COUNT(*) INTO consult FROM cdr WHERE (caller_id_name =
NEW.caller_id_name AND direction = 'outbound' AND
DATE(NEW.start_stamp) = logdate AND billsec > '0');
这里,logdate 值给出了正确的日期。但是,outbound 和 consult 给出了表中的所有行。表示前一个日期还包括不包括的日期。 我只需要当前日期的总行数。
最佳答案
替换你的DATE(NEW.start_stamp) = logdate);
使用 start_stamp = logdate);
关于sql - 为什么不在postgresql中执行语句查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42294497/