|
|
|
Создание запросов по условию, где оператор сравнения как тип данных.
|
|||
|---|---|---|---|
|
#18+
Надо реализовать выбор товаров по условиям таблицы Правил. Упрощенный пример. В БД есть две таблицы: "Продукты" и "Правила выбора". Таблица Продукты 1. Код продукта 2. Цена продукта Таблица Правила выбора 1. Код правила 2. Условие отбора (>, <, >=, <=, ==, !=) 3. Значение условия Таблица Продукты 1 10.0$ 2 15.0$ 3 8.0$ 4 21.0$ Таблица Продукты 1 ">" 12.0$ 2 "<" 16.0$ Пользователь может пополнять в том числе и таблицу Правила. Нужно, например, реализовать выборку. Для первого правила. Выбрать все продукты с ценой >12$. Это продукты №2 (15$), №4 (21$). Для вотрого правила. Выбрать все продукты с ценой <16$. Это продукты №1 (10$), №2 (15$) и №3 (8$). Вопрос: Как грамотнее реализовать такой выбор товаров по условиям таблицы Правил? При помощи запросов SQL или помощи языка программирование на стороне клиента? Правильнее использовать вместо строк условий (">", "<") коды условий (например, 1 -это ">", 2 - это "<")? Искал, но не нашел(может не знаю ключевых слов по теме). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2010, 18:57 |
|
||
|
Создание запросов по условию, где оператор сравнения как тип данных.
|
|||
|---|---|---|---|
|
#18+
Ошибся в названии таблицы. Вот так правильно. Таблица Правила 1 ">" 12.0$ 2 "<" 16.0$ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2010, 19:02 |
|
||
|
Создание запросов по условию, где оператор сравнения как тип данных.
|
|||
|---|---|---|---|
|
#18+
У вас в вашей грамматике только двухместные операторы. Не хватает И, ИЛИ. Нет поиска по названию лайком. Я в аналогичной ситуации сделал справочник грамматики, для каждого оператора задал правило трансляции его в SQL и сделал на клиенте формирование SQL строки WHERE для набранного в конструкторе выражения. Строка соединяется с SELECT ... FROM ... и скармливается серверу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2010, 09:08 |
|
||
|
Создание запросов по условию, где оператор сравнения как тип данных.
|
|||
|---|---|---|---|
|
#18+
а зачем нужна Таблица Правила выбора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2010, 11:15 |
|
||
|
Создание запросов по условию, где оператор сравнения как тип данных.
|
|||
|---|---|---|---|
|
#18+
Программист-Любитель Я в аналогичной ситуации сделал справочник грамматики, для каждого оператора задал правило трансляции его в SQL и сделал на клиенте формирование SQL строки WHERE для набранного в конструкторе выражения. Строка соединяется с SELECT ... FROM ... и скармливается серверу. Похоже это действительно реальный/оптимальный вариант. Naf а зачем нужна Таблица Правила выбора? Я привел сильно упрощенный пример. Допустим пользователь накапливает правила, а потом только по Коду_правила вызывает его. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2010, 12:30 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=36665979&tid=1542676]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 389ms |

| 0 / 0 |
