gpt4 book ai didi

mysql - 如何在 Ruby 中处理日和月?

转载 作者:行者123 更新时间:2023-11-29 14:36:46 25 4
gpt4 key购买 nike

我有在数据库表中创建文章的日期。我从八月份到今天都有文章。

我尝试在 ActiveRecord 中创建 SQL 查询,以获取今天创建的文章。

例如,今天是 1 月 14 日,我尝试将 8 月 14 日、9 月 14 日创建的文章保留到今天。

我尝试过这样的事情:

today = Date.today
day = today.strftime('%d')
day_next = (today + 1.day).strftime('%d')

Article.where('created_at >= ? AND created_at <= ?', day, day_next) #day = 14, day_next = 15

但这并没有返回正确的语句,因为文章是在 12 月 14 日和 10 月 14 日发布的。该查询没有返回任何结果。

最佳答案

你想太多了。假设 created_at 是一个普通的日期时间/时间戳字段,您应该使用 DAY()created_at 转换为其日期,然后将其直接与普通日期时间/时间戳字段进行比较Ruby Date 对象。

day = Date.today

Article.where 'DAY( created_at ) = DAY( ? )', day

# or just...

Article.where 'DAY( created_at ) = DAY( CURRENT_DATE() )'

(最初误读了您的问题;答案已更新。)

关于mysql - 如何在 Ruby 中处理日和月?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8859420/

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