Я пытаюсь использовать «Для JSON PATH» / «Для JSON AUTO» в своем запросе, чтобы увидеть результат, и получаю ошибку «Неправильный синтаксис рядом с JSON». Ниже мой код:
SELECT TOP 5
recid As Id,
FirstName, LastName,
status As 'Info.status',
state As 'Info.state'
FROM dbo.Consumers
FOR JSON PATH
Любая помощь будет оценена!
Напишите это в SSMS и поделитесь тем, что возвращает: SELECT @@ VERSION. Если не указано SQL Server 2016 или более поздней версии, команда JSON никогда не будет работать.
FOR JSON поддерживается в SQL Server 2016+. Не 2014 (или ранее).
Спасибо. Я могу это проверить

JSON в SQL Server поддерживается только в версиях 2016 и более поздних. Ваша установка - установка 2014 года, поэтому она не будет работать. Вы можете обновить свою установку до SQL Server 2016 или найти собственные решения / функции / процедуры JSON, написанные другими.
Для людей, которые твердо придерживаются SQL Server 2014 без / возможности не обновляться до следующей версии, нижеприведенное решение может использоваться для вывода значений выбора SQL в формат JSON. Это непростой метод, потому что они сначала преобразуют вывод в XML, а затем структурируют вывод в формат JSON. Что может быть болезненно, если у нас есть 100 полей для выбора из таблицы.
http://www.tothenew.com/blog/how-to-get-output-sql-server-as-a-json-string/
Таким образом, ответ будет заключаться в обновлении версии сервера SQl до 2016 года и выше, чтобы эта функция работала.
SELECT @@version