举了一个简单的例子
如何随机从a02中抽取ID号对应的 num值的天数,将A200值改掉? 简单说就是在a02 表中L1 随机抽取3天 L2 随机抽取9天 L3随机抽取3天 L4随机抽取12天 ....该如何解决 求大神指导
解决方案 »
- ADO技术中怎么还有DATA SET和SqlDataAdapter
- 如何显示某一个月的天数
- 求一SQL,在线等.....谢谢
- ——————请问,这样的视图(或临时表)能用SQL建立吗?————————
- 关于SQL Server 2000的2个问题,在线等......
- 怎么设置用户权限??请帮忙
- 如何调用具有datetime类型参数的存储过程?
- 我的SQL server一开始装上可以使用,但是几天后就出现服务器用户登陆失败,怎么回这样那!!!!!!!!1
- 很少见的一个问题,有关DataValue函数
- 服务器: 消息 446,级别 16,状态 9,过程 UNISBOMMain,行 65 无法解决 equal to 操作的排序规则冲突。
- 求插入 字段增加的SQL语句 (在线等)
- 在执行 xp_cmdshell 的过程中出错。调用 'CreateProcess' 失败,错误代码: '5'。
from a1,(select *,row_number() over(order by newid()) num from a2)a2
where a1.num>=nu.num这样就行了,至于更新,接着写吧
select * from t where exists(select 1 from a1
where id=a2.id and num>=t.num)
1.在图片中找不到a02 表喔, 哪个是a02 表?
2.将A200值改掉? 改为什么?请说明.
3.先说"将A200值改掉", 后又说"要得出的查询结果是", 不明白到底是要查询还是更新? LZ希望的结果是怎样的,请列一下.
先创建临时表#a3
select row_number() over(order by ID) NID,* into #a3 from a1declare @num int,@i int,@Ei int,@sql varchar(5000)
set @num=0
set @i=1
set @Ei=(select count(*) from (select distinct ID from a2)a)
set @sql=' '
while(@i<=@Ei)
begin
set @num=(select num from a3 where NID=@i)
if(@i<@Ei)
set @sql=@sql+'select top '+Convert(char(2),@num)+' * from a2 where ID='''+(select ID from a3 where NID=@i)+''' union all '
else
set @sql=@sql+'select top '+Convert(char(2),@num)+' * from a2 where ID='''+(select ID from a3 where NID=@i)+''''
set @i=@i+1
endexec(@sql)