【问题标题】:Retrieve row data according to the column value根据列值检索行数据
【发布时间】:2015-09-03 19:23:33
【问题描述】:

我正在尝试获取续订日期列并获取要检查的月份是否是我想要的确切月份,如果是,则显示该记录的详细信息。我的查询是:

select domain_name, renewal_date
from hosting_details
where substr(renewal_date,-5,-3) = '09'

这不会给出任何结果,但是当我在查询下运行时,我可以检索结果:

select domain_name, renewal_date
from hosting_details
where renewal_date = '2015-09-03'

我不想硬编码日期,我想检索第 9 个月的任何详细信息。我该怎么做?

【问题讨论】:

  • 使用哪个dbms? (你有几个关于产品特定 SQL 的答案......)

标签: php sql substring


【解决方案1】:

您可以尝试如下:

select domain_name,renewal_date from hosting_details where
date_format(renewal_date, '%m' ) = '09'

【讨论】:

    【解决方案2】:

    您不应该对您的(主要)WHERE 语句执行功能。它不会使用索引并执行全表扫描。

    SELECT domain_name,renewal_date FROM hosting_details
      WHERE renewal_date >= '01-09-2015' AND renewal_date < '01-10-2015'
    

    【讨论】:

      猜你喜欢
      • 2020-03-05
      • 2020-12-30
      • 1970-01-01
      • 2022-10-07
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-07
      相关资源
      最近更新 更多