Выберите место в подзапросе из одной строки со значениями CSV - PullRequest
0 голосов
/ 09 октября 2019

Я пытаюсь сделать подзапрос, в котором возвращаемое значение представляет собой список значений CSV, который я хочу использовать для предложения SELECT WHERE IN

SELECT *
FROM Facility.FacilityIO f
where f.FacilityID in (
  select Facilities
  from FacilityListView
  where FacilityID = 'PSY35'
)

FacilityListView выглядит следующим образом:

FacilityID  Facilities
SOL1        SOL1,
PSY35       PSY3,PSY5
SOL1W       SOL1,WSR1,

Я получаю 0 результатов, так как SQL-сервер ищет набор данных, а не отдельное значение, но я не знаю, как сказать SQL-серверу выбрать, где f.FacilityID in ('PSY3', 'PSY5')

1 Ответ

0 голосов
/ 09 октября 2019

Присоединитесь к таблицам и используйте оператор LIKE:

SELECT f.* 
FROM Facility.FacilityIO f INNER JOIN FacilityListView v
ON ',' + v.Facilities + ',' LIKE '%,' + f.FacilityID + ',%'
WHERE v.FacilityID = 'PSY35'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...