如何根据其它输入列的值作为条件,自动写入列值,如何实现??????

charleslongzu 2008-03-22 09:16:48
如何根据其它输入列的值作为条件,自动写入列值,如何实现

有一个表有列值,实时输入数据如下;
a b c

1 3

2 2

5 3

6 6

9 9

2 3

当a,b列输入数据后,c列值要求根据a,b列,自动填写,条件是当a列值=b列值,则c列值自动填写1,如果a列值<>b列值,则c列值自动填写2,得到
a b c

1 3 2

2 2 1

5 3 2

6 6 1

9 9 1

2 3 2

如何实现????
...全文
56 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxmcxm 2008-03-22
  • 打赏
  • 举报
回复
用触发器实现,创建插入触发器
--设表名为tt
create trigger trigIU_tt on tt
for insert
as
update a
set c=case when a=b when 1 else 2 end
from tt a,inserted b
where a.a=b.a and a.b=b.b
kelph 2008-03-22
  • 打赏
  • 举报
回复
如果规则固定且不能更改,计算列当然是最简单的
bqb 2008-03-22
  • 打赏
  • 举报
回复
学习了,我还以为要写触发器~
gahade 2008-03-22
  • 打赏
  • 举报
回复

--创建测试表
create table tt(a int,b int,c as case when a=b then 1 else 2 end)
insert into tt
select 1,3
union all select 2,2
union all select 5,3
union all select 6,6
union all select 9,9
union all select 2,3

--查询
select * from tt

--结果
/*
a b c
----------- ----------- -----------
1 3 2
2 2 1
5 3 2
6 6 1
9 9 1
2 3 2

(所影响的行数为 6 行)
*/

--删除测试表
drop table tt

34,593

社区成员

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

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