这个查询在SQL中有什么问题(what's wrong with this query in SQL)
我有以下查询:
UPDATE PRODUCT SET FIXEDCOST = (Select PRICE from PRODUCTPROGRAM where productID = PRODUCTID) * .6 WHERE FAMILY = 'Services'我需要使用FIXEDCOST表中60%的Price值更新PRODUCT表的FIXEDCOST字段。
这些表由productID关联。
该错误表示在子查询中返回了多于一个。 任何想法如何我可以解决这个问题? 预先感谢您的帮助。
I have the following query:
UPDATE PRODUCT SET FIXEDCOST = (Select PRICE from PRODUCTPROGRAM where productID = PRODUCTID) * .6 WHERE FAMILY = 'Services'I need to update the PRODUCT table's FIXEDCOST field with 60% of the value of Price in the PRODUCTPROGRAM table.
The tables are related by productID.
The error says that more than one is returned in the subquery. Any ideas as to how I could fix this? Thanks in advance for any help.
最满意答案
Tamer,您在“从premiumctprogram选择价格”中获得太多结果,您需要缩小范围或执行如下操作:
UPDATE PRODUCT A, PRODUCTPROGRAM B SET A.FIXEDCOST = B.PRICE * .6 WHERE A.productID = B.PRODUCTID AND FAMILY ='Services'试试这个,让我知道。 马塞洛
Tamer, you are getting too many results in the "select price from proudctprogram" you need narrow it down or do something like this:
UPDATE PRODUCT A, PRODUCTPROGRAM B SET A.FIXEDCOST = B.PRICE * .6 WHERE A.productID = B.PRODUCTID AND FAMILY ='Services'Try that and let me know. Marcelo
更多推荐
发布评论