Как вернуть набор результатов даже с нулевым условием в предложении where in - PullRequest
0 голосов
/ 03 апреля 2020

Я пытаюсь объединить несколько предложений where-in, и у меня возникают проблемы, когда один из них возвращает null.

Если where in выдает null, я бы хотел игнорировать его.

declare @json nvarchar(max) = '
[
  {
    "key": "A",
     "value": ["1","2"]
  }, {
    "key": "B"
  }, , {
    "key": "C"
  }
]';

select *
from someTable]
where col1 in (select value from openjson(@json, '$[0].value'))
and col2 in (select value from openjson(@json, '$[0].value')) -- returns null, so empties query
and col3 in (select value from openjson(@json, '$[1].value')) -- returns null, so empties query

Как бы я пропустил where из набора результатов, когда набор равен нулю?

...