update的问题
t1结构
jh xjxh tgmc tggc xs
BK 0 a 5 5.00
BK 1 a 5 5.00
BK 2 a 5 5.00
BK 3 a 5 5.00
BK 5 a 5 5.00
UPDATE t1 SET XS=
(SELECT XS FROM
(select JH,XJXH,TGMC,
(
select SUM(isnull(TGGC,0)) from t1 b where B.jh=t1.jh and t1.xjxh>=B.xjxh AND B.XJXH>0 AND t1.TGMC=B.TGMC
)
+
(SELECT XS FROM t1 C WHERE t1.JH=C.JH AND C.XJXH=0 AND C.TGMC=t1.TGMC
) AS XS from t1
) AS T_XS
WHERE t1.JH=T_XS.JH AND t1.XJXH=T_XS.XJXH AND t1.TGMC=T_XS.TGMC
)
WHERE XJXH>0
运行结果如下
jh xjxh tgmc xs
BK 0 a 5.00
BK 1 a 10.00
BK 2 a 15.00
BK 3 a 20.00
BK 5 a 25.00
我想问下 这里update是如何更新的?请详细说下过程
jh xjxh tgmc tggc xs
BK 0 a 5 5.00
BK 1 a 5 5.00
BK 2 a 5 5.00
BK 3 a 5 5.00
BK 5 a 5 5.00
UPDATE t1 SET XS=
(SELECT XS FROM
(select JH,XJXH,TGMC,
(
select SUM(isnull(TGGC,0)) from t1 b where B.jh=t1.jh and t1.xjxh>=B.xjxh AND B.XJXH>0 AND t1.TGMC=B.TGMC
)
+
(SELECT XS FROM t1 C WHERE t1.JH=C.JH AND C.XJXH=0 AND C.TGMC=t1.TGMC
) AS XS from t1
) AS T_XS
WHERE t1.JH=T_XS.JH AND t1.XJXH=T_XS.XJXH AND t1.TGMC=T_XS.TGMC
)
WHERE XJXH>0
运行结果如下
jh xjxh tgmc xs
BK 0 a 5.00
BK 1 a 10.00
BK 2 a 15.00
BK 3 a 20.00
BK 5 a 25.00
我想问下 这里update是如何更新的?请详细说下过程
...全文
相关推荐
解决rosdep update问题
解决rosdep update问题
Mybatis Update操作返回值问题
在获取update操作的返回值时遇到了一个问题,似乎 Mybatis 进行 update 操作得到的 int 返回值并不是影响的行数,下面通过本文给大家分享Mybatis Update操作返回值问题,需要的朋友参考下吧
VS2015 Update2 构建 Android 程序问题汇总
主要介绍了VS2015 Update2 构建 Android 程序问题汇总的相关资料,需要的朋友可以参考下
MySQL中SELECT+UPDATE处理并发更新问题解决方案分享
主要介绍了MySQL中SELECT+UPDATE处理并发更新问题解决方案分享,需要的朋友可以参考下
MySQL SELECT同时UPDATE同一张表问题发生及解决
MySQL不允许SELECT FROM后面指向用作UPDATE的表,有时候让人纠结。当然,有比创建无休止的临时表更好的办法。本文解释如何UPDATE一张表,同时在查询子句中使用SELECT.问题描述 假设我要UPDATE的表跟查询子句是同一张表,这样做有许多种原因,例如用统计数据更新表的字段(此时需要用group子句返回统计值),从某一条记录的字段update另一条记录,而不必使用非标准的语句,等等。举个例子: 代码如下: create table apples(variety char(10) primary key, price int); insert into apples valu


