-
> clickmaker © (05.12.08 18:36) [19]
Ну по одной табличке еще как то можно но IN уже не учтен. Но даже по одной не все так просто, например where (N1 = 5 or N2 = 6) and (N4 = 8 or (N5 = 6 and N7 = 8))
Неискушенный юзер в таком запросе запутается. Даже мне понятнее со скобками.
-
> [20] ANB (05.12.08 18:40)
ну понятно, что там должны быть все возможные операторы, в т.ч. Less or equal, more or equal если нужны скобки, то по нажатию Add condition можно кроме and/or предлагать либо открыть скобку, либо закрыть последнюю открытую. Тогда набор условий внутри скобок более наглядно отображать с отступами. Для нескольких таблиц, выбираем что-то типа Join: [inner/outer/full] [Table name] on [MainFieldName] = [JoinedFieldName]
Но в простейшем варианте пишется это примерно за день, может даже за несколько часов. Потом уже можно наворачивать
-
Вообще-то первоначально SQL так и задумывался.
Для людей.
Предполагалось, что любой работник, я уже не говорю о топ-менеджере с высшим образованием, сумеет заюзать SELECT, если он не идиот, конечно. Возьмет перечислит таблицы, укажет условия в WHERE, а сервер соптимизирует запрос, а программист продумает индексы.
Но люди оказались намного тупее, чем полагали создатели SQL. И оказались не в состоянии осилить даже самые простые внутренние объединения с агрегатами и группировками, которые в большинстве случаев с лихвой удовлетворили бы их потребности в таких вещах как "хочу знать суммарные доходы с разбивкой по годам".
Может нет смысла заново проходить тот же путь? Хотя чем черт не шутит... Иногда юзеры проявляют удивительную изобретательность в Excel-е, например. Может действительно можно сделать что-то дружественное для юзера?
-
> ANTPro © (05.12.08 18:22) [18] > Я не считаю что все настолько сложно
Ну так сделай, если не настолько сложно. Если не можешь, то, право, не стОит молоть языком зазря... Если же в сказки ещё веришь, то пожалуйста, верь и дальше. У нас свобода совести... Но мы к твоей вере никакого отношения не имеем. Как и весь мир.
-
> kaif © (05.12.08 19:01) [22]
> Предполагалось, что любой работник, я уже не говорю о топ- > менеджере с высшим образованием, сумеет заюзать SELECT, > если он не идиот, конечно.
и, я предполагаю, в те времена простые юзеры простые запросы писали. Ты не забывай, что тогда в командной строке работали и скрипты простенькие писали.
-
Мне кажется, что юзер любит сразу видеть результат. Если сделать так, что по мере конструирования запроса, система будет выдавать какие-то частичные результаты: сама ограничивая наборы по объему, вводя дополнительные условия за кадром и следя за тем чтобы юзер не устроил декартово произведение сдуру на большом наборе, предвосхищала бы примерно время, которое он получит в "рабочем" варианте, то что-то подобное могло бы оказаться полезным. И не только юзерам, но и нашему брату SQL-щику.
-
Вообще-то первоначально SQL так и задумывался. Для людей Люди разные бывают. Может действительно можно сделать что-то дружественное для юзера? У ANTPro © (05.12.08 18:14) [16] Пока многое еще неизвестно, может и финансирование будет А вы ему значит помочь хотите с финансированием? :) Или на халяву ?
-
Petr V. Abramov © (05.12.08 19:06) [24] и, я предполагаю, в те времена простые юзеры простые запросы писали.
Готов согласиться. А куда им еще было деться?
-
2 blackman © (05.12.08 19:07) [26
Я лишь обсуждаю саму идею. Стоит ли за это вообще браться, независимо от финансирования. Я не считаю, что за деньги стоит писать все что угодно. Хотя если ты молодой и только учишься...
-
> ANTPro (05.12.2008 18:14:16) [16]
О да ты еще и спонсируешь предприятие.
-
все уже украдено до нас. точнее до вас. и без дурацких (а все они дурацкие) построителей запросов.
я встроил все эти пользовательские хотения в грид. сам грид унаследован от ехлиба (в котором уже почти все есть) мне не хватало только некторых фич, которые и были добавлены.
-
> kaif (05.12.2008 19:01:22) [22]
ИБМ много чего не учла, например Билл Гейтса. А продуктов запороло очень много.
-
> Petr V. Abramov (05.12.2008 19:06:24) [24]
И ввод был из телетайпа, оттуда и символ точка с запятой, и вывод был на телетайп.
-
> blackman (05.12.2008 19:07:26) [26]
Какое на халяву, только пилить Шура.
-
kaif © (05.12.08 19:10) [28] Идея как я понял, заключается в том, что бы на халяву получить построитель запросов для тех кто этого делать не умеет. Можно конечно и в Excel кидать или то, что Поросенок Винни-Пух предлагает. Наконец наплодить какую-то стандартную серию или даже построитель как в Access. Но все зависит от того кто будет пользователем. Подавляющее большинство НЕ будет ничего строить, а будет звать программиста и с его помощью... Я обычно прошу нарисовать все возможные отчеты которые юзер хотел бы получать. Это обязательное требование на начальном этапе. Обобщаю написанное, меняю так что бы это действительно были отчеты. Показываю и согласовываю. После того как все готово доделываем те, что были и дополняем новыми. Обычно этого хватает. Если нет, то делаем вторую очередь, за дополнительные бабки и доп. время. Расчитывать на умного юзера я уже давно перестал. Не бывает. А если и появляются, то лучше не заморачиваться с их сверхидеями.
-
Я обычно прошу нарисовать все возможные отчеты которые юзер хотел бы получать. Это обязательное требование на начальном этапе.
Во! Правильно! Сразу задать юзеру вопрос на который точно нет ответа :)))
-
kaif © (05.12.08 19:10) [28] Забыл добавить, что браться за бесплатные идеи можно только если ты хорошо обеспечен :)
Anatoly Podgoretsky © (05.12.08 19:42) [33] Какая же там халява. Золото обещали. Обманули конечно. Но хотя бы обещали...
-
> blackman (05.12.2008 20:01:36) [36]
В данном случае не обманут, не гирю же пилить, а эквивалент золота.
-
Поросенок Винни-Пух © (05.12.08 19:59) [35] Сразу задать юзеру вопрос на который точно нет ответа Ты не прав. Если юзер не знает, чего он хочет от системы, то и начинать не стоит. Другой вопрос, что он часто как собака, все понимает, но сказать не может. Но тут уж ты сам должен ему помочь. Объяснить, что можно и в каком виде. Примерчики привести. Уверяю тебя, что он нарисует. Пусть и бред в первой редакции, но опять скорректировать можно и добиться взимной радости от общей работы. Надо также учесть, что в большинстве случаев все отчеты он уже делал раньше ручками. Можно покопаться в его бумажках. Посмотреть, что он делал и куда, кому... Абсолютно новых задач давно уже нет.
-
Anatoly Podgoretsky © (05.12.08 20:04) [37] Где же этот эквивалент? Может я самое важное пропустил? ;)
|