Sql 子查询返回了多个值。当子查询遵循=、!=、
您好,我编写了以下查询,但当我运行时,它显示以下异常:Sql 子查询返回了多个值。当子查询遵循=、!=、,sql,Sql,您好,我编写了以下查询,但当我运行时,它显示以下异常: Subquery returned more than 1 value. This is not permitted when the subquery follows =,!=, <, <= , >, >= or when the subquery is used as an expression. SELECT ITEM_MODEL, ITEM_NAME, ITE
Subquery returned more than 1 value. This is not permitted when the subquery follows
=,!=, <, <= , >, >= or when the subquery is used as an expression.
SELECT ITEM_MODEL,
ITEM_NAME,
ITEM_DESCRIPTION,
VENDOR_NAME,
(Select QUANTITY from ITEMS_MASTER ),
RATE=(CASE WHEN Discount IS NULL OR Discount=0 THEN RATE ELSE
RATE-(RATE*(Discount/100)) END),
AMOUNT=(CASE WHEN Discount IS NULL OR Discount=0 THEN AMOUNT ELSE
AMOUNT-(AMOUNT*(Discount/100)) END) ,
INVOICE_NUM,
DATE,
Discount
FROM ITEM_DETAILS ORDER BY ITEM_MODEL
这是完美的工作之前,但我不知道发生了什么,突然我知道这是难以置信的,但不幸的是,我是真的。。任何帮助都是非常值得的。从ITEMS\u MASTER,line中选择数量肯定有问题。首先,由于两个表之间没有相关性,逻辑似乎被打破了
也许应该基于项目Id与ITEMS\u MASTER表进行联接,然后不使用子查询而简单地选择QUANTITY字段。从ITEMS\u MASTER选择QUANTITY的结果是什么?不确定这是一个C问题。删除了标记。@tnw..实际上我在ADO.NET中使用它..这就是我标记CAnd的原因,这就是为什么在查询的select部分中的子查询是SQL反模式并且应该避免的原因之一,另一个是性能。当你写它的时候,只有一条记录符合条件,现在不止一条了。