Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.096 c
15-1270812348
dars73
2010-04-09 15:25
2010.08.27
Как настроить локализацию


4-1239166396
Человек
2009-04-08 08:53
2010.08.27
Не правильно работает WM_NCHITTEST на Vista x64


2-1273339176
sako
2010-05-08 21:19
2010.08.27
азерб. шрифт


2-1275032909
12
2010-05-28 11:48
2010.08.27
Откуда то происходит beep, при закрытии формы. Не надо его.


3-1242910124
Fedor
2009-05-21 16:48
2010.08.27
Запрос на выборку





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский