sqlserver面试题
1.给定表1usergrade:
| userid | username | 
| 1 | user1 | 
| 2 | null | 
| 3 | user3 | 
| 4 | null | 
| 5 | user5 | 
| 6 | user6 | 
表2:usertable
| userid | username | grade | 
| 1 | user1 | 90 | 
| 2 | null | 80 | 
| 3 | user7 | 80 | 
| 4 | user8 | 90 | 
执行语句:
question1.
select count(*) from usergrade where unsername not in (select username from usertable)
结果是: 3 notes:表中的null是指的是null字符串,而不是指数据库中的NULL(未定义),如果是NULL的话,那结果就是0了。
question2:
select count(*) from usergrade g where not exists (select null from usertable t where t.userid=g.userid and t.username=g.username)
结果是:4 notes:select null from usertable中的null只是一个列名的代号而已。
    sometimes the hardest part isn't letting go,but rather start over
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号