mysql - 仅从某些行中选择列的最大值

标签 mysql sql select subquery inner-join

enter image description here

 select name from myschema.table1 where 
 COL1 = 'A'and 
 COL2= 'B' and 
 LEVEL = (select max(LEVEL) from myschema.table1 where USERTYPE='C')

我知道正在查询表中的最大级别,而不是用户类型为“c”的行中的最大级别。我只需要查询具有该用户类型的用户。

最佳答案

你们很接近。您需要一个关联子句:

select t.name
from myschema.table1 t
where COL1 = 'A'and COL2= 'B' and 
      LEVEL = (select max(t2.LEVEL)
               from myschema.table1 t2
               where t2.col1 = t.col1 and g2.col2 = t.col2 and t2.USERTYPE = 'C'
              );

关于mysql - 仅从某些行中选择列的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45594351/

相关文章:

mysql - 如何在一个查询中使用两个 LEFT JOIN?

ruby-on-rails - Rails 4.1枚举引发错误,而是将对象设置为无效

java - JDBCBatchUpdateException 检查语法

SQL查询性能统计信息多次返回

sql - 如何使用合并命令

mysql - 使用 UNION ALL 选择以将表名显示为附加列

c - STDIN 和传入套接字上的 select()

php - mysql 中的 NULL 或 'string' 在 php 中插入查询字符串

java - 如何使用 spring MVC 将数据从数据库导出到 excel 表?

php - 使用 PHP 和 Mysql 创建 HTML 表单