![](/img/trans.png)
[英]Rails Mysql Group by strftime query not working in production
[英]Ruby strftime '%-m' not working in query
我的目标是按项目的user_id,创建的年份和创建的月份查询项目。 我在Heroku上的开发中使用sqlite3,在生产中使用postresql。
我想做这样的事情:
items.where("user_id = '?' AND strftime('%Y', created_at) = '?' AND strftime('%-m', created_at) = '?' ", 6, 2015, 3)
但是它不返回任何记录。
这有效:
items.where("user_id = '?' AND strftime('%Y', created_at) = '?' ", 6, 2015)
但这不返回任何记录:
items.where("user_id = '?' AND strftime('%-m', created_at) = '?' ", 6, 3)
我是否错误地使用了'%-m'
格式?
我不会在开发和生产中使用不同的数据库,而是使用相同的数据库。 只需在您的本地主机上配置postgresql,然后将查询更改为以下内容:
user.items.where("date_part('year', created_at) = :year AND date_part('month', created_at) = :month", year: 2015, month: 6)
假设您已经在项目和用户之间建立了关联,那么您也不需要查询user_id
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.