Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Внизсписок несуществующих записей Найти похожие ветки
← →
ford (2009-04-26 16:18) [0]Подскажите, как можно сделать такой вот запрос.
Есть таблица с заказами у каждого заказа есть свой номер
надо выдать список всех заказов в котором будут присутствовать и те которых в таблице просто не существует
например
есть записи
№заказа Клиент
1 Вася
3 Петя
4 Коля
10 Рома
в резульятате выполнения запроса надо получить
1 Вася
2 -
3 Петя
4 Коля
5 -
6 -
...
10 Рома
СУБД FireBird
как такое сделать программно я представляю а вот можноли это сделать запросом к таблице??
или посоветуйте что лучше использовать в данном случае
← →
ford (2009-04-26 17:23) [1]придумал такой вот способ,
сделал таблицу в которой есть только одно поле №заказа и заполнил его значениями от 1 до 1000
и сделал Left join с таблицей заказов
ессесно где небыло заказа с таким номером то вместо заказчика стояло null
в принципе почти то что хотелось, но :)
может ктото предложит решение поизящнее (как говориться по Феншую) :)
← →
sniknik © (2009-04-26 17:52) [2]> может ктото предложит решение поизящнее (как говориться по Феншую) :)
не удалять физически записи заказов, удалять и них ссылки на Васю, Петю, Колю, Рому...
а то и это лишнее, вдруг понадобится история, можно просто ставить пометку типа "выполнено".
← →
ford (2009-04-26 18:18) [3]
> не удалять физически записи заказов, удалять и них ссылки
> на Васю, Петю, Колю, Рому...
их никто и не удаляет
их просто не занесли
:)
вот и надо собственно отобразить чего не хватает в базе
оптимально привязать к номеру хотя конечно это не факт, но тем не менее это может отобразить что кто то не занес должную запись
← →
sniknik © (2009-04-26 18:29) [4]> их просто не занесли
порядковые номера заказов, что руками в базу заносят? странно весьма.
> кто то не занес должную запись
человек за этим не должен следить. а если это не порядковый номер, а какой то "левый" с бумажки то и порядок ничего не значит, это просто идентификатор бумажки. и это может даже не быть числом.
← →
ford (2009-04-26 18:33) [5]
> порядковые номера заказов, что руками в базу заносят? странно
> весьма.
от в том то все и дело что программа им формирует бумажку с заказом а в базу не заносит ... я не могу ничего с этим сделать
запись о заказе отдельно фунциклирует
вот мне и надо им сформировать отчет о пропусках, и пускай сами разбираются куда дели какуюто бумажку, поднимая все архивы
:)
← →
Игорь Шевченко © (2009-04-26 19:44) [6]
> а вот можноли это сделать запросом к таблице??
нет. до аналитических функций в Firebird вроде не додумались, переходи на Oracle
← →
Anatoly Podgoretsky © (2009-04-27 09:08) [7]Да никуда ее (бумажку) не девали, а просто отказались от оформления заказа. Передумали.
Кроме того насколько я понимаю, что и задним числом этот номер уже не использовать.
← →
ford (2009-04-27 11:11) [8]
> Да никуда ее (бумажку) не девали, а просто отказались от
> оформления заказа. Передумали.
Запросто
но! для аналитики, очень к стати былобы ежелиб знать от чего отказались и кто
и когда ;)
согласен??
и надо показать пользователю где искать
не будет он же глазками 40тыс. записей пробегать
← →
Anatoly Podgoretsky © (2009-04-27 11:53) [9]> ford (27.04.2009 11:11:08) [8]
Информаци о когда и кто нет
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.074 c