我对 SQL 的理解是
WHEN reading_start_dt BETWEEN '2020-02-09' AND '2020-02-15'
是相同的
WHEN reading_start_dt >= '2019-02-09' AND reading_start_dt <= '2019-02-15'
但是当查询中唯一的区别是日期范围规范时,我得到了完全不同的结果集。
正在返回正确的日期,但数据不同。
Teradata 和 HANA 都在发生这种情况。
我错过了什么吗?
编辑:
SELECT meter_id, reading_meas, reading_interval_start_dttm FROM "_SYS_BIC"."NGDW.SM.PVT/METER_READING"
WHERE Reading_Start_Dt BETWEEN '2020-02-09' AND '2020-02-15' AND Service_Channel_num = 1 AND Meter_id = 11870690
ORDER BY Reading_Interval_Start_Dttm
SELECT meter_id, reading_meas, reading_interval_start_dttm FROM "_SYS_BIC"."NGDW.SM.PVT/METER_READING"
WHERE reading_start_dt >= '2019-02-09' AND reading_start_dt <= '2019-02-15' AND service_channel_num = 1 AND meter_id = 11870690
ORDER BY Reading_Interval_Start_Dttm
正如所指出的,这是我的代码中出现拼写错误的结果,
我正在将生产中的某些内容与请求的更改进行比较。谢谢你的敏锐眼睛,星期六我的眼睛显然太累了,看不到它。