Почему SQL возвращает массив вместо объекта?
Я использую результат SQL Server 2016 JSON, но я не знаю, почему он преобразует все в массив, например, если я выполняю следующий запрос, он возвращает массив вместо объекта:
SELECT 1 AS One,2 AS Two,3 AS Three
FOR JSON PATH
Результат:
[{"One":1,"Two":2,"Three":3}]
Но я бы хотел вернуть
{"One":1,"Two":2,"Three":3}
Также я проверил этот запрос, но результат был тот же, снова массив:
SELECT TOP 1 1 AS One,2 AS Two,3 AS Three
FOR JSON PATH
1 ответ
Решение
Вам просто нужно WITHOUT_ARRAY_WRAPPER
опция:
SELECT 1 AS One,2 AS Two,3 AS Three
FOR JSON PATH ,WITHOUT_ARRAY_WRAPPER;