如何在mysql中组合以下查询结果

如何在mysql中组合以下查询结果,mysql,join,Mysql,Join,第一个问题 select b.id , b.value,b.name from table_1 b where b.id = 900; 结果: id value name 900 5027 AA 900 79426 BB 900 132276 CC 900 302885 DD 第二个问题 select a.id , max(a.value) from table_1 a where a.id

第一个问题

    select b.id , b.value,b.name from table_1 b where b.id = 900;
结果:

  id     value    name
 900     5027      AA
 900     79426     BB   
 900     132276    CC
 900     302885    DD
第二个问题

select a.id , max(a.value) from table_1 a where a.id = 900 group by a.id ;
结果

 id     value
900     302885
现在我想要这样的结果

  id      value   name
  900     302885    DD
先谢谢你

SELECT * FROM table_1 t
WHERE value = (SELECT MAX(value) FROM table_1 s WHERE t.id = s.id)
AND t.id = 900
有关如何执行此操作的其他示例,请参见手动输入


查看它在中的实时工作。

使用第一个查询,但在where子句中选择所需的值。。。这可以通过使用select MAX()语句来完成

select b.id , b.value,b.name 
from table_1 b 
where b.id = 900 and 
b.value = (
    select max(a.value) from table_1 a where a.id = 900 group by a.id
)
试试这个

select * 
from Table1 t1 
where t1.value=(select MAX(value) 
                from Table1 t2 
                where t1.id=t2.id) 
AND t1.id=900; 

此查询提供了me@PSR确定没有复制粘贴错误吗?使用sqlfiddle进行了尝试(请参阅更新的答案)。这对我来说是完美的,我看不出有什么错误。