传统的ASP和的SQLStatement:如何更新2多的硕士和详细记录与传统的ASP?

现在我想更新表。 假设,我的PurchaseOrder和PurchaseOrderDetails。

我在PurchaseOrderDetails在PURCHASEORDER表中一个字段名为状态和Matched_Status场。 我需要更新状态字段为“1”,如果所有PurchasedItems数量和金额都是相同的,当我们发出发票。 如果PurchaseItems数量或金额不匹配,我需要更新的状态为“5”。

对于Matched_Status在PurchaseOrderDetails,Deafult为“0”。 如果项目数量及金额都一样,我需要更新“1”Matched_Status在PurchaseOrderDetails。 我可以做updating.What我面对的顺序是更新到的PurchaseOrder PurchaseOrderDetails。

我PURCHASEORDER发票的数组号

我做迭代与阵列数量和更新状态字段中的PurchaseOrder表下面的语句。

UPDATE PurchaseOrder SET Status = CASE WHEN ((SELECT COUNT(*) FROM PurchaseOrderDetail WHERE CoID = 'SampleCoID' AND Matched_Status = 0 AND PurchaseOrderNo='PONo') <> (SELECT MAX(ItemsNo) FROM PurchaseOrderDetails WHERE AND Matched_Status = 0 AND PurchaseOrderNo='PONo')) THEN 5 AND 1 END WHERE CoID = 'SampleCoID' AND PurchaseOrderNo='PONo'

注:ItemsNo场均保存PurchaseItems号码保存PurchaseOrderDetails。 如果我们购买的3个项目,MAX(ItemsNo)将是3。我写的语句和循环与传统的ASP。 你们能告诉我什么是错的,在上述声明和传统的ASP的的示例代码。

提前致谢! RedsDevils

--------------解决方案-------------

哟可以试试这个更新PURCHASEORDER表中状态为“1”时,在PURCHASEORDER表数量和金额字段相同数量和金额字段发票表。

UPDATE PurchaseOrder SET Status = 1
FROM PurchaseOrder PO
INNER JOIN Invoice I On PO.Quantity = I.Quantity AND PO.Amount = I.Amount

我不知道确切的表和列名。 如果您提供的表结构,或许样本数据和输出然后,我可以提供一个更好的答案。

分类:SQL 时间:2012-07-14 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.425 (s). 10 q(s)