使用SQLite中的子查询更新记录并添加记录

乔治·史密斯

我正在尝试通过在表DeliveryContent中添加产品数量和一条称为DeliveryQuantity的记录,同时内部连接两个记录StockCatalog.StockID = DeliveryContent.StockID,内部加入DeliveryContent.DeliveryID = Deliveries.DeliveryID,来添加表StockCatalog中名为Product Quantity的记录。到目前为止,我有这个:

    UPDATE StockCatalog
    SET ProductQuantity = (SELECT StockCatalog.ProductQuantity FROM StockCatalog INNER JOIN DeliveryContent on StockCatalog.StockID = DeliveryContent.StockID WHERE StockCatalog.ProductQuantity + DeliveryContent.DeliveryQuantity)
    WHERE (SELECT DeliveryContent.DeliveryID FROM DeliveryContent INNER JOIN Deliveries on DeliveryContent.DeliveryID = Deliveries.DeliveryID)

但是,这似乎会用DeliveryContent中的DeliveryQuantity的一条记录来更新StockCatalog中的所有ProductQuantity记录。对不起,如果这令人困惑。

Kjetil S.

似乎对WHERE正在进行感到有些困惑。我猜这就是你想要的:

UPDATE StockCatalog sc SET ProductQuantity = ProductQuantity +
( SELECT DeliveryQuantity FROM DeliveryContent WHERE StockID=sc.StockID )
WHERE StockID in (select StockID from DeliveryContent);

如果每个StockID可以存在多个DeliveryContent,则应该用SUM(DeliveryQuantity)代替DeliveryQuantity。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用子查询Oracle更新多个记录

来自分类Dev

计数子查询中的记录

来自分类Dev

计算使用联接的MYSQL查询的子组中的记录数

来自分类Dev

如何使用子查询中的值按记录排序

来自分类Dev

在不使用子查询的mysql中的字段之间显示记录

来自分类Dev

如何使用WHERE更新python中的sqlite3记录?

来自分类Dev

创建后,使用子记录中的信息更新Rails父记录

来自分类Dev

使用子查询选择其他记录

来自分类Dev

使用Laravel添加数据记录和相关的子记录

来自分类Dev

我想从oracle中的子记录值更新父记录

来自分类Dev

Upsert查询未更新postgres中的记录

来自分类Dev

更新联合选择查询中的记录

来自分类Dev

SQLite 不更新记录

来自分类Dev

如何更新子记录中的缺失值?

来自分类Dev

如果在sqlite android中更新查询失败,如何插入记录

来自分类Dev

使用EmberData添加和更新记录

来自分类Dev

使用子查询更新为所有记录设置相同的值

来自分类Dev

榆木-更新记录中的记录

来自分类Dev

错误更新多个记录与SQL子查询错误

来自分类Dev

使用WHERE查询/包含多个记录的子查询

来自分类Dev

Livewire:添加新记录后无法更新子组件

来自分类Dev

如何使用ID检查记录,然后记录是否存在(如果不添加新记录则更新)

来自分类Dev

sqlite-使用单个查询查找表中是否存在多个记录

来自分类Dev

在查询中使用表单中的过滤记录

来自分类Dev

使用Eclipse在Java中记录SQL查询

来自分类Dev

在更新记录轨道时添加关联记录

来自分类Dev

子查询返回多个记录

来自分类Dev

关于使用存储在记录中的数据库名称的跨数据库子查询

来自分类Dev

SQL-使用GROUP BY获取子查询子集中或联接中的最新记录

Related 相关文章

热门标签

归档