首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL简单有关问题

2012-03-29 
SQL简单问题declare @t table(a nvarchar(20),b nvarchar(20))insert into @t values(a,a)insert into

SQL简单问题
declare @t table(a nvarchar(20),b nvarchar(20))

insert into @t values('a','a')
insert into @t values('a','b')
insert into @t values('a','c')
insert into @t values('d','d')
insert into @t values('a','e')

想查询出 a列不等于'a'并且b列也不等于'a'(也就是排除2个否定条件都成立的记录)

除了用select * from @t where a+b<>'aa' 
还有没什么方法呢?

[解决办法]

SQL code
declare @t table(a nvarchar(20),b nvarchar(20))insert into @t values('a','a')insert into @t values('a','b')insert into @t values('a','c')insert into @t values('d','d')insert into @t values('a','e')SELECT * FROM @t WHERE a<>'a' AND b<>'a'/*a                    b-------------------- --------------------d                    d*/SELECT * FROM @t WHERE a+b<>'aa'/*a                    b-------------------- --------------------a                    ba                    cd                    da                    e*/
[解决办法]
SQL code
declare @t table(a nvarchar(20),b nvarchar(20))insert into @t values('a','a')insert into @t values('a','b')insert into @t values('a','c')insert into @t values('d','d')insert into @t values('a','e')select * from @t where a <> 'a' or b <> 'a'/*a                    b                    -------------------- -------------------- a                    ba                    cd                    da                    e(所影响的行数为 4 行)*/ 

热点排行
Bad Request.