SQL Server/SQL Server Tip

SQL Server 2016 JSON 출력에 NULL 값 포함하기

SungWookKang 2015. 10. 15. 15:32
반응형

SQL Server 2016 JSON 출력에 NULL 값 포함하기

 

  • Version : SQL Server 2016

 

SQL Server 2016의 새로운 기능인 JSON 형식에서 기본적으로 NULL 값은 표시 하지 않는다. JSON 형식의 출력에서 강제로 NULL 값을 포함하는 방법에 대해서 알아본다.

 

아래 스크립트는 전형적인 SQL Server 출력을 나타내는 결과이다. Size열을 보면 NULL값이 표시됨을 확인할 수 있다.

Use AdventureWorks2014

go

 

SELECT M.ProductModelID,M.Name as [ProductModel.Name],

ProductID, Size

FROM Production.Product P

INNER JOIN Production.ProductModel M ON P.ProductModelID = M.ProductModelID

WHERE M.ProductModelID= 33

 

 

다음은 JSON 형식의 출력으로 동일한 쿼리를 실행한 결과이다. SIZE 컬럼의 NULL 값이 포함되지 않는것을 확인 할 수 있다.

SELECT M.ProductModelID,M.Name as [ProductModel.Name],

ProductID, Size

FROM Production.Product P

INNER JOIN Production.ProductModel M ON P.ProductModelID = M.ProductModelID

WHERE M.ProductModelID= 33

FOR JSON Path

 

 

 

JSON 출력 형식에 INCLUDE_NULL_BALUES 옵션을 사용하면 NULL 값을 강제로 출력할 수 있다.

SELECT M.ProductModelID,M.Name as [ProductModel.Name],

ProductID, Size

FROM Production.Product P

INNER JOIN Production.ProductModel M ON P.ProductModelID = M.ProductModelID

WHERE M.ProductModelID= 33

FOR JSON Path, INCLUDE_NULL_VALUES

 

 

 

[참고자료]

https://www.mssqltips.com/sqlservertip/4041/including-null-values-in-json-output-in-sql-server-2016/

 

2015-10-15 / 강성욱 / http://sqlmvp.kr

 

MSSQL, SQL Server, SQL 2016, JSON, INCLUDE_NULL_BALUES, SQL JSON, JSON NULL

반응형