我用 Update Tb_A set Fa,Fb select.......
SQ查询分析器报错,但我想用一条Update同时修改两个字段的值,
不知能不能做到,如能请提示,谢谢!
SQ查询分析器报错,但我想用一条Update同时修改两个字段的值,
不知能不能做到,如能请提示,谢谢!
解决方案 »
- try..finally..end
- 运行出错了,请指教.
- 如何在保存文件的时候给文件定义一个默认的文件名啊,如hahh.jpg??
- 在DELPHI中怎么调试DLL动态链接库?可以使用断点吗?
- 菜鸟问题:Delphi不支持GBK?
- 大侠帮忙看看,为什么不行??在线等
- SOS:特急 对Word中图片的操作:怎么让我刚刚插入的图片位于文字的中间或者浮动于文字的上方。
- 在线求助: 如何在stringgrid控件运行期间可以用鼠标拖动拓宽某一列的宽度?
- 类型库的问题——在线等待
- 小菜一碟,高手請用。
- 有没有这样的时期时间控件: 在TDateTimePicker的基础上可以同时选择日期和时间.
- 关于mxoutlookbarpro的问题
Set fa=値1,fb=値2
Where 条件
Update tb_xz_salary set NoworkHours=(select isnull(sum(tb_kq_nowork.NoWorkHours),0) from tb_kq_nowork where isnull(tb_kq_nowork.checker,'')<>'' and tb_kq_nowork.Emp_id=tb_xz_salary.Emp_id and tb_kq_nowork.Noworkdate>='2004-02-01' and tb_kq_nowork.Noworkdate<'2004-03-01' group by tb_kq_nowork.Emp_id) where tb_xz_salary._year=2004 and tb_xz_salary._month=2
而第二条也是从刚才的表中统计出来的而且条件也一样,我不想统计,更新两次
Update tb_xz_salary set NoworkPay=(select isnull(sum(tb_kq_nowork.Pay),0) from tb_kq_nowork where isnull(tb_kq_nowork.checker,'')<>'' and tb_kq_nowork.Emp_id=tb_xz_salary.Emp_id and tb_kq_nowork.Noworkdate>='2004-02-01' and tb_kq_nowork.Noworkdate<'2004-03-01' group by tb_kq_nowork.Emp_id) where tb_xz_salary._year=2004 and tb_xz_salary._month=2将两个字段分别对应两个(统计)查询语句就可以通过,如果我想两个字段对应一条(统计)查询的语句行不行?如果行请示例。
strSQLSUB1:='你的子查询1',strSQLSUB2:='你的子查询2'strSQL:='update tb_xz_salary set NoworkHours='+strsqlsub1+' ,NoworkPay='+strsubsql2然后提交这条sql试试
就想这样:
Update tb_xz_salary set NoworkHours=(select isnull(sum(tb_kq_nowork.NoWorkHours),0) from tb_kq_nowork where isnull(tb_kq_nowork.checker,'')<>'' and tb_kq_nowork.Emp_id=tb_xz_salary.Emp_id and tb_kq_nowork.Noworkdate>='2004-02-01' and tb_kq_nowork.Noworkdate<'2004-03-01' group by tb_kq_nowork.Emp_id) ,
NoworkPay=(select isnull(sum(tb_kq_nowork.Pay),0) from tb_kq_nowork where isnull(tb_kq_nowork.checker,'')<>'' and tb_kq_nowork.Emp_id=tb_xz_salary.Emp_id and tb_kq_nowork.Noworkdate>='2004-02-01' and tb_kq_nowork.Noworkdate<'2004-03-01' group by tb_kq_nowork.Emp_id)
where tb_xz_salary._year=2004 and tb_xz_salary._month=2更新成像你这样的结果值我没有做过,但是我类似的update句子~!
Update A
set A.Col1= B.Col1,
A.Col2= B.Col2
from AAA A
join (select Sum(sls) Col1, Sum(ada)Col2 from SSS ) B on (????)
from tb1 as a ,(select id,Col1,Col2 from tb2 ) as b
where a.id=b.id