如何使用 NULLIF 和 OPENJSON 来替换空字符串?

问题描述 投票:0回答:1

我正在尝试从 JSON 字符串中读取数据,但是如果存在空值,我需要在 SQL 中用 NULL 替换。我尝试过 NULLIF,但出现语法错误。在线示例似乎只处理写回 JSON 时替换 JSON 值,而不是读取它。

SELECT 
    js.*
INTO
    #StringValues
FROM 
    OPENJSON (@myJsonString, N'$') WITH (
         Foo nvarchar(50) N'$.Foo '
        ,Bar nvarchar(250) NULLIF(N'$.Bar', N'') -- Syntax error
    ) AS js

从 JSON 读取时是否可以创建空值?

tsql sql-server-2019
1个回答
0
投票

设置@dataJSON=(选择替换(@dataJSON, '""','null'));

在此之后使用您的 nullif 或任何其他逻辑

© www.soinside.com 2019 - 2024. All rights reserved.