我有一张包含客户数据的表格。每个条目都有指定的客户以及开始日期和结束日期。我想显示在两个变量之间开始的特定客户数据,即我要求前端的用户选择1.一个客户,并且2. startdate从x和y之间的某个位置开始。因此,显示的数据不会考虑结束日期,因为更重要的是查看在该时间范围内开始的数据,而不是结束的数据。
我曾经这样做过:
WHERE c2c.CUSTOMER LIKE '%". $customers ."%'
AND (MASTER.MASTER_SCHEDULED_START_DATE >= '". $datumanf . "'
AND MASTER.MASTER_SCHEDULED_START_DATE <= '". $datumend . "')
这看起来很有效!直到我注意到它只显示开始日期和结束日期在同一天的数据。
在研究Stackoverflow之后,我尝试了MySQL BETWEEN
WHERE c2c.CUSTOMER LIKE '%". $customers ."%'
AND (MASTER.MASTER_SCHEDULED_START_DATE BETWEEN
'". $datumanf . "' AND '". $datumend . "')
但是这仍然以某种方式考虑了结束日期,因为它显示了与之前完全相同的结果:只有那些startdate和enddate在同一天和那个定义范围之间的结果。我不明白这一点,因为我在这个查询中根本没有使用结束日期。
答案 0 :(得分:1)
这可能会帮助你..
WHERE c2c.CUSTOMER LIKE '%". $customers ."%'
AND (MASTER.MASTER_SCHEDULED_START_DATE) BETWEEN
('". $datumanf . "' AND '". $datumend . "')
答案 1 :(得分:0)
在评论部分首先回答@corinagheorge的答案。我必须先设置数据类型。