繁体   English   中英

通过计算另外2个表中的结果来更新表

[英]Updating a Table by counting results from 2 another table

我正在尝试通过计算来自其他表T2和T3的SQL查询的结果来更新表T1。

这是我想出的查询,但似乎不起作用:

UPDATE T1
set Stock =
(SELECT count(ID_Item)
                 FROM T2,T3
                 WHERE T2.ID_Product = T1.ParentSKU AND
            T3.ID = T2.ID_Product AND
            Stock_Items.Name = '' AND
            Stock_Items.Returned = ''

        GROUP BY(T3.Size)
                )

我正在尝试通过对T2的结果进行计数并对T3的不同大小进行分组来更新T1。

您需要删除GROUP BY ,如果项目的大小超过一个,则子查询将返回多个结果,并且更新将失败。

UPDATE T1
set Stock =
(SELECT count(ID_Item)
                 FROM T2 INNER JOIN T3
                 WHERE T2.ID_Product = T1.ParentSKU AND
            T3.ID = T2.ID_Product AND
            Stock_Items.Name = '' AND
            Stock_Items.Returned = '' AND
            T3.Size = T1.Size
                )

如果大小不是一个因素,则将其从子查询中完全删除

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM