В моей базе данных есть таблица tblCustomer, которая имеет 8 логических полей (MS01, MS02 ... MS08)
Используя отчет SSRS, у меня есть раскрывающийся список параметров с несколькими значениями, который позволяет выбрать каждое из 10 значений
Поэтому, если я выберу MS01 и MS05 из списка, параметр @idSite будет равен «MS01», «MS05»
.
'- 1' = True
Я хочу выбрать все записи из tblCustomer, где выбранные значения параметров имеют значение true
select idCustomer, MS01, MS02,MS03, MS04,MS05,MS06,MS07,MS08 from tblCustomer
WHERE (tblCustomer.CustomerYN = '-1')
AND
CASE
WHEN @idSite like '%MS01%' THEN tblCustomer.MS01=-1
WHEN @idSite like '%MS02%' THEN tblCustomer.MS02=-1
WHEN @idSite like '%MS03%' THEN tblCustomer.MS03=-1
END as MailShot
Я также пытался использовать, когда строка была "в" pareameter
select idCustomer, MS01, MS02,MS03, MS04,MS05,MS06,MS07,MS08 from
tblCustomer
WHERE (tblCustomer.CustomerYN = '-1')
AND
CASE
WHEN 'MS01' in @idSite THEN tblCustomer.MS01=-1
WHEN 'MS02' in @idSite THEN tblCustomer.MS02=-1
END as MailShot
Я думал, что был близок к вышесказанному, но не радости. Кто-нибудь может указать мне правильное направление?
EDIT
@ idSite - это раскрывающийся список многозначных параметров SSRS.
Он принимает значение idMailshot из таблицы ниже на основе раздела из выпадающего списка
idMailShot Location
MS01 Location1
MS02 Location2
MS03 Location3
MS04 Location4
MS05 Location5
MS06 Location6
MS07 Location7
MS08 Location8
MS09 Location9
Так что, если я выбираю Location1 & Location 2 из выпадающего списка, «MS01, MS02» должен быть передан как @idSite
Я хочу
select idCustomer from tblCustomer where
tblCustomer.MS01 =-1 AND tblCustomer.MS02=-1