С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
 Аватар для SpiritAbsolute
5 / 5 / 1
Регистрация: 07.08.2013
Сообщений: 75

Входные параметры с перечислением

06.09.2013, 12:41. Показов 1913. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем! Нужно сделать процедуру с входными параметрами , с такой задачей.
Например: id дома может быть null, если null тогда для всех; если id несколько - то id перечисляются через запятую.
подскажите как это реализовать. как объявить.

Добавлено через 27 минут
Входные параметры пользователь может перечислять через запятую. То есть их может быть несколько.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.09.2013, 12:41
Ответы с готовыми решениями:

Входные параметры NULL
Привет! В процедуре есть 4 входных параметра Id , которые могут быть NULL, и если NULL то тогда производить выборку по всем Id. тогда нужно...

Исходные, входные и выходные данные
Друзья мне нужна Ваша помощь,почему у меня неувязки в исходных,входных и выходных данных? Вроде бы все правильно писала, а преподаватель...

Входные параметры
Помогите за плюсик: использовать входные параметры функций со способом передачи данных “по значению”; Можно какой нить пример?

7
8 / 8 / 1
Регистрация: 27.06.2013
Сообщений: 46
06.09.2013, 13:36
объявить параметр id типом varchar
далее в теле процедуры распарсить с помощью строковых функций
1
 Аватар для SpiritAbsolute
5 / 5 / 1
Регистрация: 07.08.2013
Сообщений: 75
06.09.2013, 13:59  [ТС]
о как , интересно. можешь чуток поподробнее? получается как бы строковой массив.
T-SQL
1
2
3
4
5
6
7
ALTER procedure [dbo].[provision_of_services]
 
@Date datetime,
@SettlementID varchar,
@StreetsID varchar,
@HousesID varchar,
@ServicesID varchar
а как их потом потрошить ? : )
0
8 / 8 / 1
Регистрация: 27.06.2013
Сообщений: 46
06.09.2013, 15:37
USE tempdb
GO
DECLARE @a VARCHAR(100)
SET @a = '1, 2, 3 ,4 ,5 '

DECLARE @t TABLE (id int)

WHILE CHARINDEX(',',@a) != 0
BEGIN
SET @a = RTRIM(LTRIM(@a))
INSERT INTO @t
SELECT CAST(SUBSTRING(@a,0,CHARINDEX(',',@a)) as int)

SELECT @a = RIGHT(@a,LEN(@a)-CHARINDEX(',',@a))
END

INSERT INTO @t SELECT CAST(NULLIF(@a,'') as int)

SELECT id FROM @t
1
 Аватар для SpiritAbsolute
5 / 5 / 1
Регистрация: 07.08.2013
Сообщений: 75
06.09.2013, 16:01  [ТС]
класс! спасибо большое! ты крут : )
0
8 / 8 / 1
Регистрация: 27.06.2013
Сообщений: 46
06.09.2013, 16:11
вместо NULLIF(@a,'') можно использовать другие конструкции для обработки пустых значений, тут уж какую логику ты закладываешь
0
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
06.09.2013, 16:11
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
declare @s varchar(max) = '125,2,3,678,9, -7';
 
with t as
(select @s + ',' as source),
x as
(
 select
  cast(1 as bigint) as s, charindex(',', source, 1) - 1 as l, source
 from
  t
 
 union all
 
 select
  a.v as s, charindex(',', x.source, a.v) - a.v as l, x.source
 from
  x cross apply
  (select x.s + x.l + 1) a(v)
 where
  charindex(',', x.source, a.v) > 0
)
select cast(substring(source, s, l) as int) from x;
1
 Аватар для SpiritAbsolute
5 / 5 / 1
Регистрация: 07.08.2013
Сообщений: 75
06.09.2013, 16:18  [ТС]
что бы я без вас делал
я тут по руководство tsql кен хендерсона с помощью курсора пытался, не получалось ...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.09.2013, 16:18
Помогаю со студенческими работами здесь

Входные параметры запроса
Нужно сделать запрос, по полям из формы. Но проблема в том, что если поле пустое, запрос не выводит записи. Как сделать если поле пустое...

Входные и выходные параметры функции
Здравствуйте! Пытаюсь разобраться в объявлении функции, подскажите пожалуйста, если у меня есть метод генерирующий массив и метод...

Входные и выходные параметры процедуры в IBExpert
Здравствуйте! Подскажите пожалуйста, куда входят входные параметры процедуры в IBExpert? И куда выходят выходные?

Запретить изменять входные параметры в методе
Добрый день, задался вопросом, а возможно ли запретить изменять входные параметры в методе? Запретить изменять поля класса можно добавив...

Нужно ли постоянно проверять входные параметры
После языков со строгой типизацией, не могу понять дао питона. сейчас я постоянно проверяю в функциях а тот ли параметр мне передали....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru