php - SQL 语句 - SELECT * with MAX()

标签 php sql select max

我有 4 个列,分别是 ID、EQUIPID、VERSION、DESCRIPTION。用户可以添加额外的列,因此 SQL 语句需要是动态的。列ID是唯一的,永远不会重复; EQUIPID描述一个设备,意味着多个EQUIPID可以相同;而VERSION描述了相同EQUIPID条目之间的区别。

我如何查询 SELECT * 并仅获取每个具有最大 VERSION 的 EQUIPID 中的一个?

最佳答案

  SELECT tn.*
    FROM table_name tn
   WHERE tn.version =
          (SELECT MAX(sq.version)
             FROM table_name sq
            WHERE sq.equipid = tn.equipid);

基本上,选择版本等于该 equipid 的最大版本的行。

关于php - SQL 语句 - SELECT * with MAX(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6796183/

相关文章:

php - 如何在通知图标的 html/php 标题栏中将数据显示为来自数据库的通知

php - 如何生成有效的 PEM 私钥字符串?

php - 多个密码登录 : Good OR Bad

mysql - 我们如何将 AND & OR 运算符与简单连接一起使用?

javascript - 如何在javascript ajax请求中执行if...else语句?

sql - 如何在 Oracle 中使用 select 更新列

sql - 在 Delphi 中显示 SQL 查询的进度

mysql - MySQL 中使用 DATE() 函数比较两个日期的差异

php - SQL查询如何从多行返回数据

jquery - Chrome 中选择选项元素上的单击事件