我有N
行具有相同SlNo
但不同RowNo
的行,如下所示
例如:
SlNo RowNo Status
1 1 Opened
1 2 Closed
1 3 Opened
1 4 Closed
1 5 Opened
如果所有状态列行都是Closed
,我想返回1
。
其他o
。
提前致谢。
答案 0 :(得分:2)
您可以执行以下操作:
SELECT STATUS FROM `table_1` where SLNO = 1 group by status
如果您只获得一条有价值的记录"已关闭"然后执行下一个查询
UPDATE `table_2` SET Ref_Status = 'Closed' WHERE SLNO = 1;
答案 1 :(得分:0)
更新my_table
设置状态='已关闭',其中SlNo = 1
答案 2 :(得分:0)
查找所有行的计数,并使用Closed
值的计数进行检查。
<强>查询强>
select t.`SlNo`,
case when t.`RowNo_Count` = t.`closed_count` then 1 else 0 end as `new_col`
from(
select `SlNo`,
count(`RowNo`) as `RowNo_Count`,
sum(case `Status` when 'Closed' then 1 else 0 end) as `closed_count`
from `your_table_name`
group by `SlNo`
)t;