求一SQL,各位帮忙啊!

Buffer_pool 2006-01-22 03:14:16
现有表
A:
-------------------------
X Y Z
-------------------------
X,Y 为主键

现在要更新表A,例如输入(M,N,K)这条记录,当存在A.X=M AND A.Y=N是就更新A.Z=K,否则就插入一条新的记录A.X=M,A.Y=N,A.Z=K

...全文
95 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
点点星灯 2006-01-22
  • 打赏
  • 举报
回复
CREATE TABLE [A] (
[X] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Y] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Z] [char] (10) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO

--建立联合逐渐住主键
alter table A add primary key (X, Y)



--过程

if exists(select 1 from A where X ='M' and Y ='N' )
begin
update A set A.Z='K1' where A.X='M' AND A.Y='N' --我改为K1,以查看效果
end
else
begin
insert A values('M','N','K')
end


--测试通过
点点星灯 2006-01-22
  • 打赏
  • 举报
回复
--参考

http://community.csdn.net/Expert/topic/4212/4212122.xml?temp=.4574854
-狙击手- 2006-01-22
  • 打赏
  • 举报
回复
if exists(select 1 from table where x =m and y =n )
update table set z=k where x=m and y = n
else
insert table select m,n,k

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧