Предлагаю такой алгоритм:
далее сложнее:
так как запросы могут быть сложными и например выбирать данные из нескольких таблиц необходимо это учесть и расписать такой билдер, который бы это позволял. В моем первом коде это невозможно. Он позволяет выбрать только одну таблицу и с ней работать. В качестве выхода предлагаю следующий алгоритм:
после определения учавствующих в запросе таблиц, вывести пользователю все поля данных таблиц с параметрами и дать возможность определить условия по приблизительно такому алгоритму:
после составления самого кода запроса было бы неплохо включить еще и вывод результата. Но это отдельная пестня. Но без нее никак.
Чисто технически я не могу работать с комнатами с работы, если можно, давайте пока работать здесь, или дублировать здесь.
Если алгоритм пойдет, то может быть начнем уже таки? Нет: давайте уточним.
[size=-2]Добавлено в 11:42
А вот и первый работающий прототип
code_312
[size=-2]Добавлено в 16:48
А вот работающий вполне уже непрототип (код Леонида и мой я объединил в некой части).
code_313
[size=-2]P.S. Как то особого энтузиазма не вижу у коллег... Понедельник что-ли?