Postgresql API结果与SQL查询的响应不同

Postgresql API结果与SQL查询的响应不同,postgresql,api,rest,express,Postgresql,Api,Rest,Express,const amIAvailable=请求,响应=>{ const{start_date,end_date,my_emp_id}=request.body; console.logrequest.body,“body” pool.query ` 选择存在从中选择me.employee\u id 从中选择counts.employee\u id 从emp\u详情中选择e.employee\u id,counte.employee\u id review\u count 左连接项目\u分配pa 在e

const amIAvailable=请求,响应=>{ const{start_date,end_date,my_emp_id}=request.body; console.logrequest.body,“body” pool.query ` 选择存在从中选择me.employee\u id 从中选择counts.employee\u id 从emp\u详情中选择e.employee\u id,counte.employee\u id review\u count 左连接项目\u分配pa 在e.employee_id=pa.employee_id上 左联项目公关 在pa.pid=pr.pid上 其中pa.project\u alloc\u status='In Progress'和pr.start\u日期不在1美元和2美元之间 和pr.end_日期不在1美元和2美元之间 按e.employee\U id分组 计数 内部联接角色分配 on counts.employee\u id=ra.employee\u id 哪里算数。复习\算数{ 如果错误{ 投掷误差; } response.status200.jsonresults.rows; console.logresults.rows,“结果” } ;
}; 原因可能是日期字符串的处理方式。替换此查询行

和pr.end_日期不在1美元和2美元之间 使用此选项,即使字符串到日期的转换显式且受控

和pr.end_日期不在至日期$1,'MM/DD/YYYY'和至日期$2,'MM/DD/YYYY'之间
我建议,无论何时涉及日期、时间戳、时区或编码,您都要使用明确的设置/规则,并且永远不要依赖默认值。

还是相同的行为。{此pgadmin的开始日期:'2-5-2021',结束日期:'2-11-2021',员工id:'12345'}返回true,但API响应为false。但2-5-2021的格式不是您上面所说的MM/DD/YYYY格式。这意味着什么,5月2日还是2月5日?这可能是-pgadmin和API使用不同设置并以不同方式处理的原因。现在是2月5日,所以您的日期格式为mm dd yyyy。也请。log[start_date,end_date,my_emp_id]以确保运行时值是您期望的值。{start_date:'2-5-2021',end_date:'2-11-2021',employee_id:'12345'}是我在console.logrequest.body时的值