日期:2014-05-19  浏览次数:20529 次

我想做一个更新update,需要用到子查询,请教大家
update   tbhyxf   set   f_dj=f_dj+ '800 '
where   (top   1   *   from   tbhyxf   where   f_hybm= '00000001 ')

相信上述内容大家都会看懂,我需要更新会员编码为:000000001的兑奖分,但在会员消费表里有佷多000000001的记录,我只要更新第一条就好了.如何改.

------解决方案--------------------
会员消费表里肯定有消费日期字段吧:
update tbhyxf set f_dj=f_dj+ '800 '
where 日期字段 = (select min(日期字段) from tbhyxf where f_hybm= '00000001 ')

如果只是该会员的任何一条记录都可以,那么用max()函数也可
------解决方案--------------------
回復的時候,沒看到你最後一個回復。

看樣子,上面的語句不行。

好象f_lsdbm f_hybm不會同時相同,試試這個

update A set f_dj=f_dj+ '800 '
From tbhyxf A
where f_lsdbm = (Select Min(f_lsdbm) from tbhyxf where f_hybm= '00000001 ')


如果還是不行,就只能用我上面的加自增列的方法了。