mysql - 使用 group by 子句的 SQL 更新查询

标签 mysql sql

Name         type       Age
-------------------------------
Vijay          1        23
Kumar          2        26
Anand          3        29
Raju           2        23
Babu           1        21
Muthu          3        27
--------------------------------------

编写查询以将每种类型中最大年龄人员的姓名更新为“HIGH”。

另外请告诉我,为什么下面的查询不起作用

update table1 set name='HIGH' having age = max(age) group by type;

最佳答案

我已经更改了 Derek 的脚本,它现在对我有用:

UPDATE table1 AS t 
INNER JOIN 
(SELECT type,max(age) mage FROM table1 GROUP BY type) t1 
ON t.type = t1.type AND t.age = t1.mage 
SET name='HIGH'

关于mysql - 使用 group by 子句的 SQL 更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6898935/

相关文章:

mysql - node-mysql 正确转义具有唯一条件的批量删除

mysql - 无法创建 MySql 触发器

sql - SELECT SQL 查询帮助

sql - 将 Postgresql 时间戳与 Django 中的 SQL 查询中的时区进行比较

php - 我可以取回 MySQL 表中列名的默认值吗?

php - 拉维尔 5 : How to group a collection dynamically by one column or another depending on item's column value?

sql - 在 PostgreSQL 中从数组转换值

mysql - 如何在日期链表上创建唯一键

java - JPA查询: join a subquery with grouping condition

MySQL errno 150 尚未解决