mysql从另一个表填充列最大值

标签 mysql sql database

假设我有两个表:

论坛帖子:

id  topicId  text        createTime
====================================
110   7     'blah blah'  111
111   7     'blah blah'  222
112   7     'blah blah'  333
113   9     'blah blah'  444

论坛主题:

id  topicCloseTime
==================
7   ????
8   ????

我想用该主题中所有帖子的 createTime 的最大值来填充 论坛主题 中的 ??????(我的意思是 createStamp 来自论坛帖子,在具有相同topicId 的所有行中,例如 id:7 将是 333)。这怎么可能? tnx

最佳答案

您可以将 UPDATE 与相关子查询一起使用(语法可能是错误的..尝试一下):

UPDATE forumtopic ft 
SET ft.topicCloseTime = (SELECT MAX(fp.createTime) 
                         FROM forumpost fp 
                         WHERE fp.topicId = ft.Id)

关于mysql从另一个表填充列最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58308541/

相关文章:

mysql - 根据关联表下字段的平均值对列表进行排序

sql - 组接近数字

database - 使用 Doctrine DBAL 获取列的长度

java - 在主机 Java 中连接 SQLite 时遇到问题

linux - linux中top命令中的mtdd是什么

PHP MySQL 连接失败

php - 如何将 PHP 数组插入 SQL 数据库

mysql_Query date() 错误

MySql多删除

mysql - 与多对多的关系