这段代码工作:
declare @IDArticulo int = 12
declare @DescripcionArticuloVEL varchar(150) = (select top 1 DescripcionArticulo
from TabVentasEnLineaDetalle where IDArticulo=@IDArticulo and exists (select DescripcionArticulo
from TabVentasEnLineaDetalle where IDArticulo=@IDArticulo))
print @DescripcionArticuloVEL
但是,进入存储过程返回此错误:
信息116,第16级,状态1,程序SPMaestroArticulos,第43行 当未使用EXISTS指定子查询时,只能在选择列表中指定表达式。
使用单个SELECT
声明。内部SELECT
声明是不必要的。我会将您的查询重新编写为:
SELECT TOP (1) @DescripcionArticuloVEL = DescripcionArticulo
FROM TabVentasEnLineaDetalle
WHERE IDArticulo = @IDArticulo;