存储过程中两个表int型字段怎么比较

commemoration 2011-09-14 09:14:17
例如:A表有,字段:ID;Count
1 13
2 5
B表有,字段:BID;BCount
1 5
2 6
现在在存储过程里想判断A表的Count和BCount的大小。这俩字段都没有参数带进来的。
想要实现的效果:
if(Count>BCount)
insert.....
else
update......
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
--小F-- 2011-09-14
  • 打赏
  • 举报
回复
如果A,B表没有关联的话,此题无解.
dawugui 2011-09-14
  • 打赏
  • 举报
回复
分两步走,无须存储过程.
update ... from a , b where a.id = b.bid and a.Count <= b.bcount
insert into ... select ... from a , b where a.id = b.bid and a.Count > b.bcount
-晴天 2011-09-14
  • 打赏
  • 举报
回复
--问题是,两个表中各有多条记录,它们有大有小,你以什么来比较呢?
--ID 相同的进行比较是一个选择,那必须要有个ID:
if exists(select 1 from A inner join B on a.id=b.id where a.id=@id and a.Count>b.Bcount)
insert ....
else
update...
chuanzhang5687 2011-09-14
  • 打赏
  • 举报
回复
可以在存储过程中声明参数

34,588

社区成员

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

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