A表:姓名 是否合格
--------------------
张三 合格
李四 合格
王五 合格
赵六 合格
....如何判断该表下所有姓名都是否合格? 合格即满足条件,反之如有一个不合格则不满足条件。
--------------------
张三 合格
李四 合格
王五 合格
赵六 合格
....如何判断该表下所有姓名都是否合格? 合格即满足条件,反之如有一个不合格则不满足条件。
--------------------------
张三 合格 1
李四 合格 1
王五 合格 2
赵六 不合格 3
....
B表:班级 评价
--------------------------
1 全合格
2 非全合格
3 非全合格如何实现,如果该班全部人都合格,B表该班的评价则为全合格,反之如果有一个人不合格,则该班的评价为非全合格。这个sql语句怎么写?
update B 评价 ='全合格' where ....
set b.评价=IF(b.班级 is null,'全合格','非全合格')
(SELECT * FROM TA4 A WHERE NOT EXISTS(SELECT 1 FROM TA4 WHERE A.`班级`=`班级` AND `是否合格`='不合格')) B
ON B.`班级`=A1.`班级`
SET A1.`评价`=COALESCE(B.`是否合格`,'非全合格 ');