Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Есть форма. На ней грид и комбобоксы. Выбрав в комбобоксе (-ах) значения, грид должен отобразить отфильтрованные данные. Проблема в том, что фильтрация в одном запросе может быть только по одному полю, а в другом сразу по всем. Как реализовать такой запрос одной строкой. PS. Приложение пишу в С# ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 06:58 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Очередной сеанс ТормоЖжения? Что конкретно не понятно: как в запросе несколько условий объединить? P.S. C# - это конечно хорошо, но какое отношение это имеет к InterBase, Firebird, Yaffil? ------------------------------------------------------------------- I Live Again! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 07:29 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Select что_нужно from откуда_взять where условие_из_первого_комбобокса and условие_из_второго_комбобокса and условие_из_третьего_комбобокса .... Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 07:31 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
да как select использовать я знаю. вот например : Com = "select * from Otchet where kod = " + Kod + " and " + "Data between " + "'" + dtpC.Text + "'" + " and " + "'" + dtpPo.Text + "'" + " order by Name_P ascending"; У меня получается, что значение для сравнения берется из формы, а если его нет? Тогда получится такая строка для запроса (не выбрал Kod): Com = "select * from Otchet where kod = and " + "Data between " + "'" + dtpC.Text + "'" + " and " + "'" + dtpPo.Text + "'" + " order by Name_P ascending"; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 07:40 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
А непонятно то, как сделать запрос, где были бы указаны все условия для select, даже если некоторые не будут выбраны. т.е. нужен некий автоселект (если такое вообще возможно) который бы сам подставлял значения для where если они есть и не подставлял - если их нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 07:44 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
1) Используй параметризированные запросы! 2) Ну так сделай в проге разбор по условиям: если пользователь выбрал в кобобоксе1 что-то -> вставить в запрос соответсвующее условие. если пользователь НЕ выбрал в кобобоксе1 что-то -> НЕ вставить в запрос соответсвующее условие. I Live Again! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 08:01 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
AsPiro1) Используй параметризированные запросы! вот наверно это то, что надо. А как? 2) Ну так сделай в проге разбор по условиям так я и начал делать так, но подумал и остановился. У меня 4 комбобокса -> 10 вариантов комбинаций (1-2-3-4, 2-3-4, 3-4, 4), а если порядок поменять, тогда вообще, так что не катит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 08:18 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Рискуя получить по шапке.....вот, простенько (для Дельфи): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 08:26 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Dynamic фигня это все. Ставиш SELECT Pole, Pole1 FROM Table WHERE 1=1.... И тогда не надо будет отрабатывать AND'ы (везде будет надо ставить AND и не морочить с ним голову) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 08:36 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Олег из Омска AsPiro1) Используй параметризированные запросы! вот наверно это то, что надо. А как? Тут я наверное маленько погорячился:) Олег из Омска 2) Ну так сделай в проге разбор по условиям так я и начал делать так, но подумал и остановился. У меня 4 комбобокса -> 10 вариантов комбинаций (1-2-3-4, 2-3-4, 3-4, 4), а если порядок поменять, тогда вообще, так что не катит. Да хоть мульён вариантов:) Порядок следования условий не имеет значения! Что 2-3-4, что 3-2-4, что 4-3-2 серверу по суфиксу! А сами условия формируй примерно так: Если kod устновлен, то Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 08:39 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
С такими проблемами надо в другой форум... куда смотрят модераторы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 10:39 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
а такой запрос что делает? зачем @? select * from Otchet where kod = @kod ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 11:04 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
> С такими проблемами надо в другой форум... куда смотрят модераторы... Работаем... Иногда... Поехали в "Программирование"... Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 13:46 |
|
||
|
генерирование selectа для фильтрации грида
|
|||
|---|---|---|---|
|
#18+
Лучше такое писать с помощью N отдельных запросов и выполнять в зависимости от условий один из них. Если конечно у тебя не таблица в 100 строк или если большая, но в которой ни одного индекса нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2006, 15:01 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=33725910&tid=1346868]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
76ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 266ms |
| total: | 432ms |

| 0 / 0 |
