2

値を含むエントリのIDを取得する必要があります。

これは私が使用したものです:

SET @ValuationId = (SELECT ValuationId FROM dbo.Valuation WHERE ValuationPropertyId = @ValuationPropertyId)

上記の問題は、複数の値を選択することです。最新の値を選択するために何を使用できますか?

これが私が与えられたエラーメッセージです:

メッセージ512、レベル16、状態1、プロシージャGetLatestValuationOfPropIdThenCallUpdateComparibleSalesInfo、行15サブクエリが複数の値を返しました。サブクエリが=、!=、<、<=、>、> =の後に続く場合、またはサブクエリが式として使用される場合、これは許可されません。

4

1 に答える 1

2

使用するMAX()

SET @ValuationId = (SELECT MAX(ValuationId) 
                    FROM   dbo.Valuation
                    WHERE  ValuationPropertyId = @ValuationPropertyId)

また

SET @ValuationId = (SELECT TOP 1 ValuationId
                    FROM   dbo.Valuation
                    WHERE  ValuationPropertyId = @ValuationPropertyId
                    ORDER  BY ValuationId DESC)
于 2013-02-19T08:58:10.380 に答える