如何更新A表最新时间的10条记录?(就10分了跪求好心人帮忙!)

mymeiis 2006-03-14 09:01:44
例A表 结构如下:

username password buydate
abc 12345 2005-6-1
a12 122245 2005-6-1
.. .... .... N条
1abc 112345 2005-1-1

求解,感激!!!!!!!
...全文
204 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
OK了,谢谢
xeqtr1982 2006-03-14
  • 打赏
  • 举报
回复
declare @a table(username varchar(10),[password] varchar(10),buydate datetime)
insert into @a select 'abc','rwrewrw','2005-1-1'
insert into @a select 'abc','rwrewrw','2005-4-1'
insert into @a select 'tyr','rwrewrw','2005-11-1'
insert into @a select 'yhr','rwrewrw','2001-6-1'
insert into @a select 'abc','rwrewrw','2005-1-1'


update @a set buydate=getdate() where username
in (select top 10 username from @a where username='abc' order by buydate desc)

select * from @a
--好像没什么问题阿
Alang_79 2006-03-14
  • 打赏
  • 举报
回复
update A set buydate=getdate() where username in (select top 10 username from A where username='abc' order by buydate desc)
这句话没有问题呀
xyqiqi 2006-03-14
  • 打赏
  • 举报
回复
你哪个是主键呀,要用主键关联!
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
update A set buydate=getdate() where username in (select top 10 username from A where username='abc' order by buydate desc)
xeqtr1982 2006-03-14
  • 打赏
  • 举报
回复
你把你的语句贴出来看看
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
哦我写错了又按你们写的,但是有不是更新10条而是全部
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
楼上的大哥 你们写的"表" 和 "table"是不是就是我的A表
我试了提示错误如下
服务器: 消息 170,级别 15,状态 1,行 1
第 1 行: '=' 附近有语法错误。
khyhli 2006-03-14
  • 打赏
  • 举报
回复
update 表
set 更新操作
where username in (select top 10 username
from table where username='abc'
order by buydate desc)
xeqtr1982 2006-03-14
  • 打赏
  • 举报
回复
update 表
set 更新操作
where username in (select top 10 username
from table
where username='abc'
order by buydate desc)
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
楼上的大哥对不起我有点没说全,不好意思,你再看看以下条件怎么写?
就是说username还必须=abc的前10条
huailairen 2006-03-14
  • 打赏
  • 举报
回复
update 表
set 更新操作
where username in (select top 10 username
from table
order by buydate desc)
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
mymeiis 2006-03-14
  • 打赏
  • 举报
回复
上面两位老大,我要的不是查找,而是更新(update)
xeqtr1982 2006-03-14
  • 打赏
  • 举报
回复
同意楼上:)
huailairen 2006-03-14
  • 打赏
  • 举报
回复
sorry
错了 应该是:
select top 10 *
from table
order by buydate desc
huailairen 2006-03-14
  • 打赏
  • 举报
回复
select top 10 *
from table
order by buydate

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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