请教关于表的操作

flysocket 2008-02-29 09:38:11
有三个表
A表: id1,num1
B表: id2,num2
c表:id3,id1,di2

现在需要将表A和表B中的列值插入到C表中,即随机抽取A中的id1(条件num1>某个值),随机抽取B中的id2(条件num2>某个值)放入到c表的id1和id2中。
...全文
102 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
flysocket 2008-02-29
  • 打赏
  • 举报
回复
谢谢
dawugui 2008-02-29
  • 打赏
  • 举报
回复
create procedure my_proc
as
begin
declare @id1 as int
declare @id2 as int
declare @id3 as int

select @id1 = top 1 id1 from A where num1 > 某个值 order by newid()
select @id2 = top 1 id2 from B where num2 > 某个值 order by newid()

select @id3 = isnull(max(id3),0) + 1 from C

insert into C select @id3,@id1,@id2
end
go

exec my_proc

使用存储过程,每执行一次插入一条记录.
dawugui 2008-02-29
  • 打赏
  • 举报
回复
有三个表
A表:id1,num1
B表:id2,num2
c表:id3,id1,di2

现在需要将表A和表B中的列值插入到C表中,即随机抽取A中的id1(条件num1> 某个值),随机抽取B中的id2(条件num2> 某个值)放入到c表的id1和id2中。

随机:

select top 1 id1 from A where num1 > 某个值 order by newid()
select top 1 id2 from A where num1 > 某个值 order by newid()

至于你的插入如何搞就不知道了,如ID3怎么赋值?

34,576

社区成员

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

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