【问题标题】:How to solve this, SQL beetwen 2 date, in SQL 'OR', the result is mismatch如何解决这个问题,两个日期之间的 SQL,在 SQL 'OR' 中,结果不匹配
【发布时间】:2017-12-11 06:00:23
【问题描述】:

这是我的以下代码:

$this->db->where('plb_db_prod.tpb_header.KODE_DOKUMEN_PABEAN = 27 AND plb_db_prod.tpb_header.KODE_KANTOR_TUJUAN = 050100 OR plb_db_prod.tpb_header.KODE_DOKUMEN_PABEAN = 40 OR plb_db_prod.tpb_header.KODE_DOKUMEN_PABEAN = 16');

$this->db->where('plb_db_prod.tpb_header.TANGGAL_AJU >= '.$start_date.' AND plb_db_prod.tpb_header.TANGGAL_AJU <= '.$end_date);

【问题讨论】:

  • 你能不能让它更具可读性?
  • 哪个数据库引擎工具? mysql?数据库服务器?邮递员?甲骨文?
  • Sql Server @ARr0w

标签: sql database codeigniter


【解决方案1】:

那么此代码将为您提供获得以下结果的指南,或者当您想要在这几天之间更新某些内容时。

我在这里使用的日期格式是mm/dd/yyyy

Select tbl1.* 
from tbl1 
where tbl1.Datecolumn between '8/12/2017' and '12/1/2017';

这里之间有FromDateToDate

对于更新,您可以尝试相同的逻辑。

Update tbl1 
set tbl1.Column = 'somedata' 
where tbl1.datecolumn between '8/12/2017' and '12/1/2017';

【讨论】:

    【解决方案2】:

    您可以使用以下查询来查找开始和结束之间的日期;

    SELECT
        *
    FROM
        MY_TABLE 
    WHERE 
        MY_DATE BETWEEN Start_Date AND End_Date
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-02
      • 2015-10-02
      • 2021-04-23
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多