gpt4 book ai didi

mysql - 选择日期提供了错误的结果

转载 作者:行者123 更新时间:2023-11-29 12:04:24 25 4
gpt4 key购买 nike

我试图从数据库中返回一些结果,其中 date_order 列是 1970 年,但查询还返回 2014 年和 2015 年的日期。我尝试了几个查询,但它们都是一样的。

我的 table

  • accession_id (INT),
  • date_order(DATE) 默认“0000-00-00”,
  • date_billed(DATE) 默认“0000-00-00”,
  • date_paid(DATE) 默认“0000-00-00”

我的查询:

  1. 从账单中选择 DISTINCT(accession_id)、date_order、date_billed、date_paid,其中 date(date_order) = '1970-01-01' AND accession_id BETWEEN '206070' AND '296715' OR '402603' AND '411626';

  2. 从账单中选择 DISTINCT(accession_id)、date_order、date_billed、date_paid WHERE date_order = '1970-01-01' AND accession_id BETWEEN '206070' AND '296715' OR '402603' AND '411626' ;

  3. 从结算中选择 DISTINCT(accession_id)、date_order、date_billed、date_paid,其中 date_order LIKE '%1970%' AND accession_id BETWEEN '206070' AND '296715' OR '402603' AND '411626';

最佳答案

您需要在第一组日期之后指定 BETWEEN,并使用括号。就像这样:

SELECT DISTINCT(accession_id), date_order, date_billed, date_paid FROM billing WHERE date(date_order) = '1970-01-01' AND 
(
accession_id BETWEEN '206070' AND '296715'
OR
accession_id BETWEEN '402603' AND '411626'
);

就目前情况而言,这些数字的计算结果为真,并且对它们进行“或”运算,因此您将获得所有结果。

关于mysql - 选择日期提供了错误的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31788501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com