powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / MSSQL 2000 Reporting Services
2 сообщений из 2, страница 1 из 1
MSSQL 2000 Reporting Services
    #33421556
ruslrain
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Существует таблица Table1 с полем F1 int
требуется реализовать вот такой селект:
Код: plaintext
select F1 from Table1 where F1 in (@param)
когда пользователь вводит @param для примера :
Код: plaintext
 1 , 2 , 3 
SQL должен быть такого вида:
Код: plaintext
select F1 from Table1 where F1 in ( 1 , 2 , 3 )
но RS генерит такой SQL
Код: plaintext
select F1 from Table1 where F1 in ('1,2,3')

пробовал распарсить @param чтобы он имел вид ('1','2','3'), но тогда MSSQL выдает ошибку:
Код: plaintext
Syntax error converting the varchar value '1','2','3' to a column of data type int
Можно конечно полность распарсить @param и потом сконвертировать в int, но хотелось бы узнать есть ли другое решение.
Заранее спасибо
...
Рейтинг: 0 / 0
MSSQL 2000 Reporting Services
    #33421624
FantomGood
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно смотреть в сторону динамического SQL
exec('select F1 from Table1 where F1 in ('+ @param+')')
или можно сделать функцию которая парсит вашу строку и возращает данные в виде таблицы, тогда в in нужно будет указать Вашу функцию
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / MSSQL 2000 Reporting Services
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]