表id name
-- ----
1 a
2 b
3 c
4 d
select *
from tbl
where name in ('a','b','c')
结果
id name maxFlg
-- ---- -----
1 a -
2 b -
3 c O在这里maxFlg怎么得出来?注意我只查询1~3的. 不查询4.如果我只查询1~2,那么2就的maxFlg就是O了.SQL怎么写?
-- ----
1 a
2 b
3 c
4 d
select *
from tbl
where name in ('a','b','c')
结果
id name maxFlg
-- ---- -----
1 a -
2 b -
3 c O在这里maxFlg怎么得出来?注意我只查询1~3的. 不查询4.如果我只查询1~2,那么2就的maxFlg就是O了.SQL怎么写?
解决方案 »
- mysql的突然变成本地不能用密码,远程要用密码才能登录,这是神马情况???求解
- 不显示删除回复显示所有回复显示星级回复显示得分回复 一个可能比较简单的问题,应用怎么访问mysql 主从库中 多个从库
- SET GLOBAL log_bin_trust_function_creators = 1 如何在my.cnf里面配置?
- mysql参数优化中,关于query_cache_size的问题!
- 一个MySql查询语句
- mysql 怎么每次读取指定的几行
- MySQL的优势与劣势
- 怎么解决中文变成‘?’?
- 求一个简单的有关count返回值的简单问题,在线等
- 大家来帮我想想
- mysql 数据库中varbinary 字段如何更新
- 如何实现存储过程
from (select * from tb1 where name in ('a','b','c')) a
left join (select max(id) as c from tb1 where name in ('a','b','c'))b
on a.id=b.id
from (select * from tb1 where name in ('a','b','c')) a
left join (select max(id) as c from tb1 where name in ('a','b','c'))b
on a.id=b.c
改成这样就好了
select id,name
from tbl
where name in ('a','b','c')
from 表
where name in ('a','b','c')
不用两次条件外还有吗?能不能MAX后的显示多行记录.
比如
id name max(id)
-- ---- -------
1 a 4
2 b 4
3 c 4
4 d 4可以吗?
select *,b.c `max(id)`
from tbl,(select max(id) as c from tb1 where name in ('a','b','c'))b
where name in ('a','b','c','d')
有像oracle的partion by之类的吗?