我们有两个表(toRouteCSV7,UpdateFOCQtyTable) .toRouteCSV7有两列。 ItemNumber and FOCQty和UpdateFOCQtyTable具有两列ItemID,updatefocvalue

toRouteCSV7
in
ItemNumber  FOCQty
A123           0
A124           0
A125           0
A126           0


更新FOCQtyTable

ItemID    updatefocvalue
A125         1256
A126         14596


更新后,我们需要这样

 ItemNumber  FOCQty
    A123           0
    A124           0
    A125           1256
    A126           14596


我们这样尝试

 tx.executeSql('REPLACE INTO toRouteCSV7 (ItemNumber,FOCQty) select dest.ItemNumber,dest.FOCQty,src.ItemID,src.updatefocvalue from UpdateFOCQtyTable src inner join  toRouteCSV7 dest on src.ItemID = dest.ItemNumber');


我们没有任何运气。我们正在使用phoneGap开发移动应用。请向我们介绍

我们有错误

Error Processing SQL:5
Error Processing message SQL:could not prepare statement(1 4 values for 2 columns)

最佳答案

只要您要更新单个列,就可以简单地使用相关子查询:

UPDATE toRouteCSV7
SET FOCQty = (SELECT updatefocvalue
              FROM UpdateFOCQtyTable
              WHERE ItemID = toRouteCSV7.ItemNumber)
WHERE ItemNumber IN (SELECT ItemID
                     FROM UpdateFOCQtyTable)

07-27 20:53