【问题标题】:How to select from a given month without using between or >=?如何在不使用 between 或 >= 的情况下从给定月份中进行选择?
【发布时间】:2014-07-04 07:40:21
【问题描述】:

我有一个包含所有月份的字符串数组,即 ['January', 'February',...etc]。我想遍历这个数组并将其传递给一个 SQL 命令,该命令将在该月内获取所有内容。 例如

SELECT * WHERE foodate='January'

将返回从 1 月 1 日到 1 月 31 日的所有记录。

【问题讨论】:

  • foodate 列是什么数据类型?
  • 应该使用哪一年?当前的?
  • 该列是日期时间。年份可能会有所不同,但为了简单起见,现在只是今年。
  • MySQL 手册是你的朋友dev.mysql.com/doc/refman/5.5/en/…

标签: mysql date select between


【解决方案1】:

那个 foodate 是 varchar 还是 date 类型?

如果是 varchar,你可以这样做:

SELECT * WHERE foodate LIKE '%January%'

或者你可以看到here一些日期类型的响应

【讨论】:

  • foodate 是一个日期时间字段
【解决方案2】:

你试过吗?

select *from your_table where monthname(foodate)='January' ;

【讨论】:

    猜你喜欢
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-28
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    相关资源
    最近更新 更多