Ответ 1
почему бы не использовать это:
declare @LastExtractDate date
SELECT TOP 1 @LastExtractDate=[ExtractedDate]
FROM [OnsiteV4].[dbo].[SqlPendingIndex] order by ExtractedDate desc
Я хочу извлечь значение ExtractedDate из этого запроса и использовать его как @LastExtractDate в следующем запросе. Как это сделать?
SELECT TOP 1 [ExtractedDate]
FROM [OnsiteV4].[dbo].[SqlPendingIndex] order by ExtractedDate desc
следующий запрос:
insert into @table(Hex, KeyDeviceId, ObjectDateTime, ExtractedDate )
SELECT CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), ObjectValue, 1)) AS Hex, KeyDeviceId, ObjectDateTime , GETDATE ()
FROM SQLPending
WHERE (ObjectSubType LIKE '%GAS%') and (ObjectDateTime > @LastExtractDate)
почему бы не использовать это:
declare @LastExtractDate date
SELECT TOP 1 @LastExtractDate=[ExtractedDate]
FROM [OnsiteV4].[dbo].[SqlPendingIndex] order by ExtractedDate desc
Просто объявите и назначьте:
DECLARE @LastExtractDate DATETIME = (
SELECT TOP 1 [ExtractedDate] FROM [OnsiteV4].[dbo].[SqlPendingIndex] order by ExtractedDate desc
)
или лучше:
DECLARE @LastExtractDate DATETIME = (
SELECT MAX(ExtractedDate) FROM [OnsiteV4].[dbo].[SqlPendingIndex]
)
Попробуйте это просто
declare @LastExtractDate date
SELECT @LastExtractDate=MAX([ExtractedDate])
FROM [OnsiteV4].[dbo].[SqlPendingIndex]
Используйте это:
DECLARE @ExtractedDate DATETIME
SET @ExtractedDate = (SELECT TOP 1 ExtractedDate
FROM [OnsiteV4].[dbo].[SqlPendingIndex]
ORDER BY ExtractedDate DESC