Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. Помогите пожалуйста в построении запроса? Приходится устраивать цикл по базе что бы отобрать. Есть таблица depo_outgo это исходящие товары со склада. Когда запрашиваем отчет по текущему месяцу необходимо исключить повтор показа следующих позиций. Если одинаковые: - Наименование товара - Цена закупки - Цена продажи То фильтром ищем такие товары и суммируем и количество. Количество товаров могут быть в месяц отправляться по разному по этому нам важно считать одинаковые товары суммируя их количество отправленных в месяц. Например Вчера : Холодильник количество= 2 , Цена закупки=100, Цена продажи=150 Сегодня : Холодильник количество= 3 , Цена закупки=100, Цена продажи=150 Завтра : Холодильник количество= 4 , Цена закупки=100, Цена продажи=150 Как вы видите мы отправляем одинаковый товар с одинаковыми наценками в месяц но с разными количествами. В отчете по месяцу мы должны видит только так : Холодильник количество= 6 , Цена закупки=100, Цена продажи=150 Что я делаю: 1) Ищу уникальные наименование товаров. Сортировываю по имени так. Потому что в depo_outgo хранятся только ID товаров id_tov Код: plsql 1. 2. 3. 4. 5. 6. 7. 2) Далее По циклу по каждому товару ищу одинаковые DISTINCT Цена закупки Цена продажи Код: plsql 1. 2. 3. 4. 5. 6. 7. 3) Далее По циклу ищу если в таблице depo_outgo есть несколько одинаковые товары с Цена закупки Цена продажи то суммирую только их количество sum(`quantity`) AS quantity Код: plsql 1. 2. 3. 4. 5. 6. 7. Таким образом получается исключить повторы Каким образом можно оптимизировать эти действия? В запросах не силен помогите пожалуйста? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2016, 17:34 |
|
||
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
Syrbek Например Вчера : Холодильник количество= 2 , Цена закупки=100, Цена продажи=150 Сегодня : Холодильник количество= 3 , Цена закупки=100, Цена продажи=150 Завтра : Холодильник количество= 4 , Цена закупки=100, Цена продажи=150 Как вы видите мы отправляем одинаковый товар с одинаковыми наценками в месяц но с разными количествами. В отчете по месяцу мы должны видит только так : Холодильник количество=6 , Цена закупки=100, Цена продажи=150Вот будь там 5, 7 или 9 - я бы понял... но 6 у меня ну никак не получается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2016, 18:41 |
|
||
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
AkinaSyrbek Например Вчера : Холодильник количество= 2 , Цена закупки=100, Цена продажи=150 Сегодня : Холодильник количество= 3 , Цена закупки=100, Цена продажи=150 Завтра : Холодильник количество= 4 , Цена закупки=100, Цена продажи=150 Как вы видите мы отправляем одинаковый товар с одинаковыми наценками в месяц но с разными количествами. В отчете по месяцу мы должны видит только так : Холодильник количество=6 , Цена закупки=100, Цена продажи=150Вот будь там 5, 7 или 9 - я бы понял... но 6 у меня ну никак не получается... Прошу прощение за опечатку должно быть сумма Холодильник количество=9 ошибка в моем описании ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2016, 18:50 |
|
||
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
Ну тогда просто GROUP BY + SUM(). Всё получается одним запросом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2016, 21:18 |
|
||
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
AkinaНу тогда просто GROUP BY + SUM(). Всё получается одним запросом. В двух словах не понятно. Можно по подробнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2016, 23:44 |
|
||
|
Помогите пожалуйста в построении запроса?
|
|||
|---|---|---|---|
|
#18+
Syrbek, Вопрос решен: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Тему можно закрывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2016, 13:33 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39369686&tid=1831056]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 342ms |

| 0 / 0 |
