Foxtable(狐表)用户栏目专家坐堂 → 有关SQL,这样的要求如何实现


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

主题:有关SQL,这样的要求如何实现

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


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
有关SQL,这样的要求如何实现  发帖心情 Post By:2012/10/4 22:34:00 [只看该作者]

比如表A,有分配量,虚存量,ID三列。

有两个变量s和g.满足ID等于变量g.

条件1:如果虚存量小于变量s,修改 分配量 - 虚存量,虚存量 = 0.

条件2:如果虚存量大于变量s,修改 分配量 - s,虚存量 = 虚存量 -s.

以上需要SQL update来实现,因为这个表是多人操作随时会变化的。请教这个SQL语句如何写?如果满足条件1时需要返回虚存量是多少?

[此贴子已经被作者于2012-10-4 22:38:59编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2193 积分:13908 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2012/10/5 12:30:00 [只看该作者]

用 ReplaceFor 可以吗?

 Dim filter as string

filter="虚存量] <" &s 

DataTables("表A").ReplaceFor("分配量", 分配量-虚存量, filter)

DataTables("表A").ReplaceFor("虚存量", 0, filter)

filter="虚存量] >" &s 

DataTables("表A").ReplaceFor("分配量", 分配量-s, filter)

DataTables("表A").ReplaceFor("虚存量", 虚存量 -s, filter)


 


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


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2012/10/5 12:37:00 [只看该作者]

这个肯定不可的。


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


加好友 发短信
等级:狐精 帖子:3313 积分:23146 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2012/10/5 12:41:00 [只看该作者]

只能使用sql UPdate来实现

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/8 11:18:00 [只看该作者]

 这个需要写成一个存储过程,然后在狐表里调用 exec 存储过程名

 回到顶部