MySQL——让所有的事情都变成一个查询

标签 mysql sql database

我试图看看是否可以在一个查询中完成以下情况:

我有一个包含多列的表,但是,只有两列重要:version 和 groupId。 许多行可以共享相同的groupId值,版本列是需要的数字 待排序。

给定两个 groupId 值 A 和 B,我想最终返回两行。我想找到 A 组和 B 组的最新版本号。

感谢您的帮助。抱歉,如果这相当明显,但我遇到了困难

最佳答案

类似这样的吗?

SELECT groupId, MAX(version) max_version
FROM YourTable
WHERE groupId IN ('A', 'B')
GROUP BY groupId;

您没有指定任何数据类型,因此我假设 groupId 实际上可以采用 'A' 等字符值。只需更改此设置即可满足您的需求。基本思想是,在仅过滤掉您感兴趣的值后,对您的 groupId 进行GROUP BY。然后,您为每个值SELECT MAX(version)

关于MySQL——让所有的事情都变成一个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9627671/

相关文章:

database - 如何停止 Oracle dbms_job

mysql - 当 mysql(innoDB) 表被更改(锁定)时,插入会发生什么?

php - 查找时间字符串大于当前时间 SQL 的行

java - JPA连接表查询

mysql - SQL:查找计算字段中的最大行数

sql - 如何从 nvarchar(max) 类型的列中存储和提取 XML 信息,并在连接中使用它?

php - SQL中的计算,如何控制它

mysql - 在查询中正确使用 COUNT 函数来获取百分比 (MySQL)

mysql - 如何使用表中的主键属性将值插入到sql中的多值属性中?

sql - 如何在go中使用sql server包