еще раз о свойствах stored procedure!
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



еще раз о свойствах stored procedure! Expand / Collapse
Автор
Сообщение
22.12.2001 16:01
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 17.02.2003 10:51
Сообщ.: 82, Visits: 903
вот пример из жизни:
в хранимую процедуру приходит несколько параметров и в зависимости от того, что за парметры туда приходят, мне надо сформировать запрос. Но фишка в том, что эти выходной запрос будет варьироваться еще и от комбинации этих параметров. Например:
a=0
b=1
c=2
и если a=0, то select * from table where a=0
если b=1, то select * from table where a=0 and b>1
если a=0 и c=2, то select * from table where c!=0 or b=3
Т.е. как видно, то не все так просто. Я хотел обойти эту ситуацию и ввести какую-либо строковую переменную, в которую бы записывал тело запроса после слова "where ", а потом бы эту строку присоедил бы как-то к осноывному select.
Но ничего у меня толкового не вышло, поэтому может кто-нибудь мне поскажет как можно обойти эту проблему?
Сообщ. #737449
25.12.2001 2:18
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 21.06.2006 23:51
Сообщ.: 326, Visits: 3 588
declare @base varchar(1024), @condition varchar(512)

select @base = "select * from YOUR_TABLE "
...
select @condition = "where salary < 100"

exec (@base + @condition)
Сообщ. #737598
25.12.2001 16:26
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 17.02.2003 10:51
Сообщ.: 82, Visits: 903
2AiK
Ага ! Спасибо!
Я уже разобрался :)
Сообщ. #737643
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 8:27