一条带条件的SQL,应该怎么写

jronald 2008-03-02 11:53:50
意思是这样

SELECT top 1 id for t where a=1 AND b=2
if id!=NULL then update t ...
else insert into t ...
...全文
118 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jronald 2008-03-03
楼上:
用EXISTS效率怎样?
如果存在,还是要再查询出存在的语句在哪里,而查询条件有三个,
如果用
SELECT TOP 1 id ...
效率照理也应该差不多啊,好处就是id可以是聚焦索引,若存在,可以很快定该记录
回复
jronald 2008-03-02
2楼: 我要在ado中运行,能
declare @d varchar(10)
?
回复
pt1314917 2008-03-02

if exists(SELECT 1 form t where a=1 AND b=2)
update t ...
else
insert into t ...
回复
liangCK 2008-03-02
declare @d varchar(10)
select @d=d from t where a=1 and b=2
if @d is not null
update t
else
insert into t
回复
liangCK 2008-03-02
if exists(select 1 from t where a=1 and b=2)
update t
else
insert into t..
回复
-狙击手- 2008-03-02
exists
回复
HU0L0NG 2008-03-02
NULL不能用= 和 !=
应用IS NOT
回复
HU0L0NG 2008-03-02
declare @id char(10)
select top 1 @id = id from t a=1 AND b=2
if @id!=NULL then update t ...
else insert into t ...
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-03-02 11:53
社区公告
暂无公告