环境 sql2000
表 man
列 room ,name ,rm
201 张三
202 李四
203 王五
表 yd
列 room ,name
201 张三
yd只有第一行 room 和 man 表一样(也就是只要yd 表中出先的 room 和 man 表中出现的 room一样 ) ,现在要求得到
结果
201(OK) 张三
202 李四
203 王五
请教这个简单sql写法 谢谢!
------解决思路----------------------
SELECT CASE WHEN T2.room IS NOT NULL THEN T1.room+'(OK)'ELSE T1.room END room
,T1.name
FROM man T1
LEFT JOIN yd T2 ON T1.room=T2.room
另外,另一个贴中,如果放在视图中有问题,你可以把视图的代码发上来看下
------解决思路----------------------
应该要加上name
SELECT CASE WHEN T2.room IS NOT NULL THEN T1.room+'(OK)'ELSE T1.room END room
,T1.name
FROM man T1
LEFT JOIN yd T2 ON T1.room=T2.room AND t1.name =T2.name