|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
25.11.2015, 11:47 | #1 |
Пользователь
Регистрация: 20.03.2009
Сообщений: 99
|
остатки на складе запрос
Помогите составить запрос по остаткам
есть таблица оборудования и таблица прихода/расхода таблица оборудования Equips выглядит Таблица прихода расхода так PRIHRASH Нужно расчитать по схеме Название оборудования|Остаток на складе поле mainState это статус 1 - пришло 2 - выдано сотруднику 3 - списано остаток должен вычисляться по схеме всё что пришло - выданое сотруднику |
25.11.2015, 11:57 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А что тут каждое из полей означает?
Я например не пойму, что в накладной SERIAL делает, если это не номер накладной. И MAINSTATE это код, показывающий что это, приход\расход\списание\и т.д. ?
I'm learning to live...
|
25.11.2015, 12:23 | #3 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Типа такого
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
25.11.2015, 20:34 | #4 | |
Пользователь
Регистрация: 20.03.2009
Сообщений: 99
|
есть некое оборудование которое поступает на склад
на склад оборудование может поступать либо а)от поставщика, либо быть б)возвращено сотрудником всё это дело запилино в 1 таблицу PRIHRASH DATE - дата прихода/расхода SKLAD_ID - склад на который пришел/ушел товар EQUIP_ID - оборудование/товар это связь с Equips.ID COUNT - кол-во товара/оборудования которое пришло /ушло SERIAL - серийный номер оборудования MAINSTATE - статус 1 - пришло, 2 - на руках, 3 - списано MEMBER_ID - Работник который получил товар на руки связь FOR_ORG - для какой огранизации например оборудование пришло от кого то значит например 24.11.2015|1|3|50|null|1|8|приход для клиента СеверАвтоДор тоесть 50 шт пришло и mainstate = 1 далее оборудование может быть выдано какому то сотруднику на руки например выдано 5 единиц этого же товара это му же сотруднику тогда запись такая 25.11.2015|1|3|5|null|2|8| дальше сотрудник может либо установить это оборудование клиенту например усановил 3 шт., тогда его надо списать с рук сотрудника 25.11.2015|1|3|3|null|3|8| или оно снова может быть возвращено на склад со статусом mainstate = 1 как приход или так и числиться на сотруднике Так вот не могу понять как написать подсчет остатка на складе Остаток на складе = Весь приход -(минус) всё оборудование которое когда либо получали сотрудники например сотрудник всё же вернул те 3 единицы оборудования тогда 50(было от поставщика)+3(возврат сотрудника)-5 = 48 Цитата:
Но я впринципе могу его завести и через приход например от поставщика (создав поставщика и обозвав его к примеру "Начальный остаток на складе") Ну вот как то так Последний раз редактировалось Antony41; 25.11.2015 в 20:54. |
|
25.11.2015, 20:56 | #5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
25.11.2015, 22:24 | #6 | |
Пользователь
Регистрация: 20.03.2009
Сообщений: 99
|
спасибо помогло. В итоге составил вот такой запрос
Код:
Остаток на руках = Всё взятое со склада оборудование - списанное Цитата:
помогите доработать запрос когда значение ноль то выдает null а поставил условие, а как селать если не null в итоге нужно подкорректировать запрос что бы он не считал остаток дважды в запросе идет сначала сравнение с null а затем исходя из результата сравнения еще раз пересчитывает сумму Код:
Последний раз редактировалось Stilet; 28.11.2015 в 18:19. |
|
27.11.2015, 12:00 | #7 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
Нет никакого ноля у вас, у вас left join, и про coalesce почитайте, пора в книгу заглянуть.
|
27.11.2015, 12:04 | #8 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
27.11.2015, 18:33 | #9 | |
Пользователь
Регистрация: 20.03.2009
Сообщений: 99
|
хех вот я тупой!))) спасибо Stilet
Цитата:
Да в книгу я заглядывал и инет штудировал просто нужно немного практики |
|
27.11.2015, 20:06 | #10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как посчитать остатки и обороти на складе, накладные товара и услуг вместе? | bidzina | БД в Delphi | 10 | 01.12.2014 19:47 |
составить запрос, который выберет все товары хранившихся на складе не более 30 дней относительной прибыль не менее 20% | Лучик2009 | SQL, базы данных | 1 | 20.02.2013 09:03 |
Остатки на складе | Ardarik | SQL, базы данных | 8 | 15.02.2013 20:44 |
Остатки вируса | HellMercenariess | Безопасность, Шифрование | 2 | 14.09.2010 04:14 |
Запрос: Сгруппировать остатки по периодам | Black_Guardian | SQL, базы данных | 14 | 03.08.2009 15:02 |