abc表:项目 状态
--------------------------
东部污水处理 正在进行中
建设路排水 未开始
东方广场 已完成
德明旅馆装修 已完成
....如何判断abc表每一行记录的状态都是"已完成"?
--------------------------
东部污水处理 正在进行中
建设路排水 未开始
东方广场 已完成
德明旅馆装修 已完成
....如何判断abc表每一行记录的状态都是"已完成"?
如果是根据结果而执行某个语句呢? 即当所有记录的状态“已完成"为真,就update另外一个表的其中一个boolean字段为真。
如果是根据结果而执行某个语句呢? 即当所有记录的状态“已完成"为真,就update另外一个表的其中一个boolean字段为真。 建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
abc表:
工程ID 项目 状态
----------------------------------------------------------
1 东部污水处理 正在进行中
1 建设路排水 未开始
1 东方广场 已完成
1 德明旅馆装修 已完成
2 创业大厦 已完成
2 星光酒店水电 已完成
3 丽冬广场 正在进行中
3 新世界广场 已完成xyz表:
工程ID 全部完成
------------------------------------------
1 否
2 是
3 否判断abc表同一工程ID下全部项目是否标记已完成,如果是,则update xyz表对应的列”全部完成“为”是“
set 全部完成=IF(b.K=0,'是','否')
SELECT A.工程ID,IF(MIN(IF(A.状态='已完成',1,0))=1,'y','n') as 全部完成 FROM TTLS A GROUP BY a.`工程ID`