Я пытаюсь построить запрос для обновления таблицы с датой получения элемента. Величина будет идти от нуля до ненулевого числа. Мы храним записи каждый день каждого элемента, находящегося в нашей системе.Получить дату, когда размерность элемента изменяется с нуля на ненулевой
До сих пор я
SELECT dw1.system_id, dw1.item, dw2.date
FROM dw_inventory_detail dw1
INNER JOIN dw_inventory_detail dw2 ON dw2.item = dw1.item AND dw2.system_id = dw1.system_id AND dw1.quantity != dw2.quantity
WHERE dw1.system_id = '010000'
AND dw1.item = 'AGRS'
AND dw1.quantity = 0
Это дает мне
- 010000 АГРС 2013-03-27
- 010000 АГРС 2013-03-28
- 010000 АГРС 2013-03- 29
- 010000 AGRS 2013-03-30
- 010000 AGRS 2013-03-31
- 010000 АГРС 2013-04-01
- 010000 АГРС 2013-04-14
- 010000 АГРС 2013-04-15
- 010000 АГРС 2013-04-16
- 010000 АГРС 2013-04-17
Это почти правильно, но это дает мне строку при каждом изменении количества. Мне нужна только дата, когда quanity переходит от нуля к ненулевому.
Я еще не начал часть обновления. Мне нужно сначала запустить эту часть.
Исходные данные выглядит следующим образом
- 2013-03-27 010000 начале 1200
- 2013-03-28 010000 начале 1200
- 2013-03-29 010000 рано 400
- 2013- 03-30 010000 начала 400
- 2013-03-31 010000 начало 400
- 2013-04-01 010000 начало 400
- 2013-04-02 010000 Early 0
- 2013-04-03 010000 Early 0
- 2013-04-04 010000 Early 0
- 2013-04-05 010000 Early 0
- 2013-04-06 010000 рано 0
- 2013-04-07 010000 рано 0
- 2013-04-08 010000 рано 0
- 2013-04-09 010000 рано 0
- 2013-04-10 010000 рано 0
- 2013-04-11 010000 Early 0
- 2013-04-12 010000 Early 0
- 2013-04-13 010000 Early 0
- 2013-04-14 010000 начале 3200
- 2013-04-15 010000 АГРС 3200
указал нам «что вы получите», не сообщая нам «что вы» это ненормальный. – Strawberry