比如我这个图中查询到的列表,如果圈红的字段为0就舍弃这条记录,意思就是保证查到的第一条记录圈红字段的值为1,如果这个字段开始连续几条都是0,都需要舍弃,但是如果这个0在1后面那就不做处理,所有记录都展示
现在还没想到什么好的SQL解决办法,有没有大佬给个思路
如有用,望采纳呀!!
首先确定你这个查询只有一个结果集还是有多个(如分页)。
1、如果是有一个结果集的,直接通过逻辑代码去过滤就可以,如第一个是不符合条件的,继续往下判断,直到遇到符合条件位置
2、如果是有多个结果集的,每次分页查询前,先去查询到该页数据为1的数据的ID或者唯一标识,然后根据ID往后查询到需要的条数
如果疑问,可以留言!!!如有用,望采纳呀!!
主要是showFlag起作用,如果你是第一条,并且是flag=0,showFlag就是0,其他场景就是1,外面套一层查询select ,分页啥的基本都够了
为什么不用高级程序语言解决,不要什么逻辑都放到数据库服务器上,会严重降低数据库性能
我默认你的id是由小到大递增的进行处理。
select * from 表 where id>=(select min(id) from 表 where warningStatus=1);