大虾救我

bingjiling 2004-12-05 12:01:11
大虾下救命

我遇见了一个问题不知道怎么解决

数据表示这样的


a b c d

1 1 1 0
2 1 1 1
3 1 1 0
. . . .
. . . .
. . . .
10000 . . 1


每次{随机,不是取第一条}的取得一条数据
保保证每次取得 d 为0;

取得的数据d改改变成1;

随机
...全文
70 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
skyboy0720 2004-12-05
  • 打赏
  • 举报
回复
select top 1 a,b,c,d=1 from tablename where d=0 order by newid()
你是不是这个意思
skyboy0720 2004-12-05
  • 打赏
  • 举报
回复
select top 1 * from tablename where d=0 order by newid()
skyboy0720 2004-12-05
  • 打赏
  • 举报
回复
取得的数据d改改变成1;?
有点不明白
zhang_yzy 2004-12-05
  • 打赏
  • 举报
回复
select top 1 a,b,c,d=1 from tablename where d=0 order by newid()
支持这个
double22822 2004-12-05
  • 打赏
  • 举报
回复
同意skyboy0720(人是人他妈生的,妖是妖他妈生的!)的选择,用631799(杭州工人)的更新。newid产生随机数。
vinsonshen 2004-12-05
  • 打赏
  • 举报
回复
declare @i int

select top 1 @i=a from 表 where d=0 order by newid()

取一条数据:
select * from 表 where a=@i

把取得的数据记录d改变成1:
update 表 set d=1 where a=@i
631799 2004-12-05
  • 打赏
  • 举报
回复
update tb set d = 1 where id=(select top 1 id from tb where d=0 order by newid())

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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