|
|
|
Запросы Запросы как бы вывернуться!
|
|||
|---|---|---|---|
|
#18+
Здравствуйте знатоки! Вот Вам такой вопросик! Есть табличка в которой количество полей не меряно! И мне необходимо создать запрос который отбирает множество всякой всячины из нее но таким образом что иногда присутствует два параметра в запросе иногда пять но при этом должно быть так если параметр пусто то имеется в виду выдать по этому полю все! Примерно так SELECT * FROM MYTABLE WHERE FL1=PR1 AND FL2=PR2 AND FL3=PR3 .... PRn Если PR2 не передан то одать все что есть, все это в рамках одного оператора WHERE вообще возможно уложить или писать несколько запросов от количества входящих можно конечно и динамически но вот если вот так! Кто чего подскажет или нет! Akatla ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2003, 06:43 |
|
||
|
Запросы Запросы как бы вывернуться!
|
|||
|---|---|---|---|
|
#18+
см. execute immediate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2003, 07:20 |
|
||
|
Запросы Запросы как бы вывернуться!
|
|||
|---|---|---|---|
|
#18+
Динамически формируй запрос в процедуре так, как тебе хочется, потом его выполняй, результат возвращай либо курсором, либо через обычный select (http://ln.com.ua/~openxs/projects/oracle/ora011.html) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2003, 07:40 |
|
||
|
Запросы Запросы как бы вывернуться!
|
|||
|---|---|---|---|
|
#18+
Проблема легко решается с помощью dbms_sql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2003, 09:22 |
|
||
|
Запросы Запросы как бы вывернуться!
|
|||
|---|---|---|---|
|
#18+
SELECT * FROM MYTABLE WHERE FL1=PR1 AND ((FL2=PR2) OR (PR2 is null)) например, для PR2=0 выдать все - PR2 в where как бы нет ((FL2=PR2) OR (PR2=0)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2003, 19:10 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=32089349&tid=1992210]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 462ms |

| 0 / 0 |
