Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 15.05.2012
Сообщений: 128
1

Реализация if-else

26.08.2015, 17:41. Показов 792. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем, задачка вроде не сложная, но никак не могу к ней подступиться.
Пишу скрипт. В скрипт передается параметр идентификатор объекта (id_obj).

В скрипте нужно реализовать такой select:

Если id_obj> то
select * from where id_obj=&1
Иначe (id_obj=-1)
select * from where id_obj

...Подскажите, комбинации and , or уже перепробовала
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.08.2015, 17:41
Ответы с готовыми решениями:

Реализация
Кто может помочь с одним моментом в курсовике , курсовик сделан почти весь, но там буквально 5-7...

Реализация
Хочу создать программу Простую (при наживании на кнопку к примеру ок) Создавался бат файл с моими...

Реализация ЛС
Добрый день, нужна помощь. Начинаю делать Личные сообщения. Стразу возникает вопрос. Как достать...

Реализация
Такое через радио инпут делать или как? в первый раз такую штуку делаю

8
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
26.08.2015, 17:55 2
Цитата Сообщение от murr Посмотреть сообщение
Иначe (id_obj=-1)
select * from where id_obj
Что это запрос должен вернуть?

SQL
1
 t.id_obj=&1 OR &1 = -1
Так всмысле надо?
0
105 / 49 / 26
Регистрация: 01.09.2014
Сообщений: 140
26.08.2015, 18:09 3
SQL
1
AND t.id_obj=CASE WHEN t.id_obj > ??? THEN &1 ELSE -1 END
Не очень понял, может такую конструкцию попробуй.
0
1 / 1 / 0
Регистрация: 15.05.2012
Сообщений: 128
26.08.2015, 18:42  [ТС] 4
ну если передается параметр больше нуля, т.е. определенная цифра, например параметр &1= 2
то выбираем из таблицы все записи где id_obj=&1=2.
Если в параметр передается -1, то надо выбрать все записи из таблицы, без каких либо ограничений.

Добавлено через 11 минут
Или, если параметр который передается есть в таблице, например id_ob=&1=2, то выгружаем все записи где id_obj=2
Если передается параметр которого нет в таблице выгрузит все данные из таблице без ограничений

Вот такая штука

Добавлено через 7 минут
Вообщем нужно проверять поле id_obj...и выбирать селект
0
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
26.08.2015, 19:21 5
Если приходит -1, то выгружаем все. Если конкретный айди, то его:
Цитата Сообщение от KuKu Посмотреть сообщение
t.id_obj=&1 OR &1 = -1
Если надо так:
Цитата Сообщение от murr Посмотреть сообщение
Если передается параметр которого нет в таблице выгрузит все данные из таблице без ограничений
что довольно странно звучит, то можно сделать так:
SQL
1
SELECT * FROM tbl WHERE NOT EXISTS(SELECT 1 FROM tbl t WHERE t.id_obj = &1) OR id_obj = &1
Ну или выбирать селект по условию.
0
1 / 1 / 0
Регистрация: 15.05.2012
Сообщений: 128
26.08.2015, 19:26  [ТС] 6
KuKu,
Если передается параметр которого нет в таблице выгрузит все данные из таблице без ограничений

Да. с этим согласна)

Можно еще пару словпро " выбирать селект по условию". Пример какой нить)
0
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
26.08.2015, 19:29 7
Цитата Сообщение от murr Посмотреть сообщение
" выбирать селект по условию"
Имеется в виду выбрать запрос на уровне pl/sql или приложения, которое работает с базой, а не пихать в один запрос.
0
105 / 49 / 26
Регистрация: 01.09.2014
Сообщений: 140
26.08.2015, 19:38 8
SQL
1
2
3
SELECT *
FROM your_table 
WHERE t.id_obj=CASE WHEN &1 > 0 THEN &1 ELSE t.id_obj END
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
27.08.2015, 08:29 9
Цитата Сообщение от murr Посмотреть сообщение
ну если передается параметр больше нуля, т.е. определенная цифра, например параметр &1= 2
то выбираем из таблицы все записи где id_obj=&1=2.
Если в параметр передается -1, то надо выбрать все записи из таблицы, без каких либо ограничений.
Oracle 11 SQL
1
2
SELECT * FROM TABLE 
WHERE id_obj=DECODE(&1,-1,id_obj,&1)
если передаем -1 то получаем все записи, иначе выбираем только по переменной
0
27.08.2015, 08:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.08.2015, 08:29
Помогаю со студенческими работами здесь

Реализация БД в MO
Здравствуйте форумчане! :) Имеется таблица с данными. Хотелось бы , чтобы при открытии документа...

Реализация
Есть меню слик слайдера Первый пункт должен быть font-size: 18 пикс и так увеличиваться до...

Реализация AND и OR
Данные программы необходимо реализовать на Scheme (диалекте LISP). ВАЖНОЕ УСЛОВИЕ: При...

Реализация на C#
Как в C# работать с WinAPI? Например, я пишу hwnd h = FindWindow(nil,'Безымянный - Блокнот');...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru