mysql - 从表中删除最小值

标签 mysql sql database min

我有一个包含 10 个高分的表,当新用户出现大于最低分的新高分时,我想从表中删除最低分。我已经尝试了所有建议的方法来做到这一点。请有人帮忙。

最佳答案

像这样的东西应该可以工作。您将在插入新记录后运行它。

delete from t t1 where t1.score not in 
(select t2.score from t t2 order by t2.score desc limit 10)

如果表中的每条记录都有唯一的 ID,那么我将对其进行如下修改:

delete from t t1 where t1.id not in 
(select t2.id from t t2 order by t2.score desc limit 10)

关于mysql - 从表中删除最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48286868/

相关文章:

mysql - 选择查询 - 获取两个年龄最小和最大年龄之间的所有数据

c# - 如何知道何时将新记录添加到数据库

php - 在 PHP 中单独打印 MYSQL 表中的每一行

sql - 如何对我创建的分布式数据库表应用全局查询

php - SQL PHP 插入表

mysql - 慢 SQL,试图了解发生了什么

mysql - 从 MySQL 切换到 Oracle 会不会很困难?

python - Django 操作错误 at/(1045, "Access denied for user ' root' @'localhost' (使用密码 : YES)")

mysql - 将 MySQL 表分成 2 个?当前搜索速度太慢

mysql - 在mysql数据库中创建一个默认值为null的列