Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
13.12.2012, 19:05
|
|||
---|---|---|---|
|
|||
Использование в SELECT ... WHERE вычисляемых полей |
|||
#18+
всем привет! есть ComboBox, в котором три значения: 'все', 'м', 'ж'. переменной polMW присваивается значение, выбранное пользователем Сейчас выборка по полу выполняется так: Код: sql 1. 2. 3. 4. 5.
А хочется сделать это одной строкой для любого варианта! Как в WHERE pol= указать, что нужно выбирать все записи, если пользователь выберет 'все', типа Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.12.2012, 19:55
|
|||
---|---|---|---|
Использование в SELECT ... WHERE вычисляемых полей |
|||
#18+
Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.12.2012, 20:16
|
|||
---|---|---|---|
Использование в SELECT ... WHERE вычисляемых полей |
|||
#18+
Возможны, еще варианты 1. В качестве условия отбора можно указать просто логическую константу Код: sql 1.
2. При настройке SET ANSI OFF (это настройка по умолчанию), сравнение символьных строк идет до окончания символов в самом коротком выражении. А это значит, что любая символьная строка будет равна пустой строке. Следовательно, для случая "все" надо подставить пустую строку (две кавычки подряд) Код: sql 1.
3. Если в таблице не может быть других значений кроме "М" и "Ж", то можно указать два условия, объединенных по OR или функцию Inlist() или директиву IN. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.12.2012, 20:26
|
|||
---|---|---|---|
Использование в SELECT ... WHERE вычисляемых полей |
|||
#18+
Еще можно сравнить поле самим собой. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.12.2012, 20:48
|
|||
---|---|---|---|
|
|||
Использование в SELECT ... WHERE вычисляемых полей |
|||
#18+
ВладимирМВозможны, еще варианты 3. Если в таблице не может быть других значений кроме "М" и "Ж", то можно указать два условия, объединенных по OR или функцию Inlist() или директиву IN. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Заработало! Огромное спасибо! у меня подобного рода выборок много будет и такой вариант позволит уйти от кучи IF ELSE ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=41&tablet=1&tid=1583271]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 274ms |
total: | 407ms |
0 / 0 |