php - 如何在查询中列出最近更新的父上层?

标签 php mysql

enter image description here

我有与图片相关的父/子表。对于父表中的每一行,子表中可以有大约 100 或 200 个子行。当我升级子表时;我还将其父行的 tID 编号提供给线程 ID 列下的子行。因此,每个子行不超过一个父行。

如果我的父表中有一个像“LastChildTimestamp”这样的列,我可以使用最后一个子时间戳升级相关行吗?如果可以的话你能给我举个例子吗?

我想要实现的是,当我列出 parent 时,将最近更新的 parent 放在上面,并且我想让这变得简单。因此,如果您有更好的解决方案或方法,我也愿意。

最佳答案

您可以使用两种不同的方法来解决此问题。

  1. 创建parent.LastChildTimestamp 字段,然后使用数据库触发器更新它。

参见:http://www.techonthenet.com/mysql/triggers/after_update.php

特别是,您可以在子表中设置插入后和更新后触发器来更新关联的父行。

  • 或者,您可以在需要读取时简单地聚合子行中的数据。您的查询将类似于:
  • 选择最大值(时间戳) 来自 child WHERE child.threadID = (线程ID)

    关于php - 如何在查询中列出最近更新的父上层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32037713/

    相关文章:

    mysql - 谁能告诉我在 mysql 中如何显示姓名不以字母 A 开头的员工姓名?

    PHP/MYSQL 连接和区分多个表并按 2 个条件显示结果

    php - 我怎样才能得到一个 url 段?

    php - 您可以取消注册关机功能吗?

    php - 基于 int 的自定义字段排序

    asp.net - 当我使用 GridView 时无法查看下一页

    php - Laravel 搜索多对多关系

    php - 使用ajax从html表单更新数据库

    javascript - 如何使用jquery ajax进程访问单独的PHP页面中的函数?

    mysql - (2006) MySQL 服务器已经消失