Мне нужно получить 10 лучших, 100 таких записей из таблицы. Но мне нужно назначить значение для верхнего предложения, такого как 10 или 100 в переменной.Ошибка синтаксиса при назначении переменной для верхнего предложения в sql-сервере
Но когда я даю, как показано ниже, он дает синтаксическую ошибку «Неправильный синтаксис рядом с« @numberofRecords ».».
DECLARE @numberofRecords INT
SELECT @numberofRecords = ConfigValue FROM tblConfigItems (NOLOCK) WHERE configName = 'TopRecords'
SELECT TOP @numberofRecords [ID],TypeID, MessageType, operationDate
FROM NotifyTbl (NOLOCK)
wHERE STATUS IN ('1', '2')
Как достичь этого?
Я пробовал это в SQL Server 2008 R2, его не работало. – thevan
@thevan Я пробовал это в SQL Server 2008 R2, он работает. возможно, вы могли бы предоставить некоторую техническую информацию, и не только «не работает». любое сообщение об ошибке? – Paolo
Я попробовал это, прежде чем давать решение. Может быть, база данных в режиме совместимости SQL 2000? –