mysql - 如何使用 strftime 格式化查询日期

标签 mysql ruby-on-rails ruby date

我正在尝试获取当月的所有记录。我必须查询的字符串格式为 2019-01-12。我要查询的记录是 DateTime 记录,因此它的格式如下 2018-08-11 13:39:22.959330

所以我正在尝试构造一个可以实现此目的的查询

Score.where('user_id = ? AND date_closed.strftime("%Y-%m) = ?', current_user.id, date)

其中 date2019-01-12 字符串。上面的代码产生了错误

FUNCTION date_closed.strftime does not exist

我用谷歌搜索但无法找到实现此目的的东西。大多数解决方案都涉及在一个日期范围内进行搜索,我真的很想尝试保持搜索方法相同。

最佳答案

你有那个 https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-formatDATE_FORMAT 函数

DATE_FORMAT(date_closed, "%Y-%m")

编辑:您还必须格式化传递给查询的日期

关于mysql - 如何使用 strftime 格式化查询日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54633098/

相关文章:

mysql - 由于内连接,mysql 记录显示两次

mysql - GROUP_CONCAT 中的 where 条件

mysql - 如何在不点击按钮的情况下自动从 MySQL 获取数据到 Android?

ruby-on-rails - 如何将 ActiveRecord 表名转换为模型类名

php - Google Chart - 如何使用 php 变量来更改数据源

ruby-on-rails - 我收到此错误:未初始化的常量 YAML::ENGINE (NameError)

ruby-on-rails - 美国以外的 Ruby on Rails 和 Paypal

ruby-on-rails - Ruby 仅反向索引但保留值?

ruby - 如何检查 Capybara 页面中是否存在 url/链接?

ruby-on-rails - Rails - 使用嵌套属性为 has_many 创建 seeds.rb