此代码有效:
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行,州1,程序SPMaestroArticulos,第43行,消息
仅当未使用EXISTS指定子查询时,才可以在选择列表中指定表达式。
答案 0 :(得分:2)
使用单个SELECT
语句。内部的SELECT
语句是不必要的。我会将您的查询重新编写为:
SELECT TOP (1) @DescripcionArticuloVEL = DescripcionArticulo
FROM TabVentasEnLineaDetalle
WHERE IDArticulo = @IDArticulo;