作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Rails 应用程序表,其中包含用户
对项目
的 View 。每条记录都有 user_id
(bigint,外键)、project_id
(bigint、外键)和 created_at
(日期时间)。
当前,每次调用项目的“显示”操作时,该应用都会记录一次 View ,这意味着用户可以(并且确实...)通过重复重新加载页面来增加每个项目的 View 计数。
我计划更新 Controller ,以在十分钟内仅记录给定用户对给定项目的 View - View 去抖。
我的问题是如何在 MySQL 中构造一个查询来删除同一项目上同一用户在十分钟内创建的先前“重复”记录?有可能吗,还是我必须在 Ruby 中将其作为迁移或 rake 任务来完成?
最佳答案
最好从源头解决这个问题(即在重新加载的情况下不为当前用户创建条目)。
您可以在created_at上使用YEAR()、MONTH()、DAY()和MINUTE()函数来选择或在您的情况下按分钟删除给定用户的同年/同月同日记录。
关于mysql - 删除属于同一用户的另一条记录十分钟内创建的任何 MySQL 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55571020/
我是一名优秀的程序员,十分优秀!