Foxtable(狐表)用户栏目专家坐堂 → u pdate语句


  共有3136人关注过本帖树形打印复制链接

主题:u pdate语句

帅哥哟,离线,有人找我吗?
cuicuibing
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:405 积分:3572 威望:0 精华:0 注册:2014/1/8 17:12:00
u pdate语句  发帖心情 Post By:2020/5/5 13:03:00 [只看该作者]

表a

编号    学习     零工     装车   
 1       2000   2600    3000


表b

编号   方式   时间   工资   单号  姓名
  1      学习    9              001  aa
  1      零工    10            001  bb

以上表的形式,用

Dim cmd As New SQLCommand
cmd.C
Dim cur As String = "pg0000021467"
cmd.CommandText = "u pdate 表b  SET 工资 = 时间 * b.('"& a.方式 &"')/30/9  from 表b as a  left join (s elect * from 表a) As b on a.编号 = b.编号 where 单号 = '001‘”
cmd.ExecuteNonQuery()

请教版主,标红的部分,应该怎么写

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110572 积分:562750 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/5 13:51:00 [只看该作者]

如果方式只有少数几种,可以这样

cmd.CommandText = "u pdate 表b  SET 工资 = 
时间 * (case when a.方式='学习' then b.学习 when a.方式='零工' then b.零工 else b.装车 end )/30/9  from 表b as a  left join (s elect * from 表a) As b on a.编号 = b.编号 where 单号 = '001‘”

如果比较多,且不固定,没有办法一条sql搞定

 回到顶部
帅哥哟,离线,有人找我吗?
cuicuibing
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:405 积分:3572 威望:0 精华:0 注册:2014/1/8 17:12:00
  发帖心情 Post By:2020/5/5 14:53:00 [只看该作者]

谢谢版主

 回到顶部