|
|
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток всем форумчанам. Я не очень силен в практике составления запросов. Кроме как select* ftom test по сути ... Помогите разобраться с такой задачей: 1) База данных MySQL (MariaDB) 1) Есть ряд таблиц (их около 50 шт) по учету статистических данных у которых есть ряд одинаковых полей пример Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. Таким запросом я выберу сумму с группировкой по дате из таблицы 1_1 Код: sql 1. 2. 3. 4. 5. 6. 7. а мне надо из n таблиц как лучше поступить??? или городить такой огород: Код: sql 1. 2. 3. 4. 5. Но так выдает результат странно: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. А хотелось бы в таком виде: Код: sql 1. 2. 3. 4. 5. 6. 7. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 11:21 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
В общем случае запрос будет таким: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 11:34 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Akina, СПАСИБО! для моей задачи такой метод подходит для приведенного примера работает Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. И выдает правильный результат. Более того такой запрос легко масштабируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 11:47 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Уважаемый Akina, и другие форумчане Правильно ли будет получение общего результата в данном примере через такой запрос Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Приведенный код рабочий. Но... Может есть более простая (рациональная) конструкция. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 12:45 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Поскольку нужна чисто суммарная информация, без группировок - вполне нормальный код. Ну если не считать только момента, что Sum(COALESCE(t1.result1, 0)) эквивалентен COALESCE(Sum(t1.result1, 0)) , что немножко уменьшит количество расчётов (Sum игнорирует NULL-ы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 13:00 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Спасибо,Akina. Как я понял что можно оптимизировать таким образом: Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 14:44 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Ну и собственно вытекающая из этого всего следующая задача Каким образом составить запрос на получение данных сумм с нарастающим итогом. т.е. что бы было так Код: sql 1. 2. 3. 4. 5. 6. 7. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 14:57 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
ForManзапрос на получение данных сумм с нарастающим итогом.Проще всего это выполнить с помощью переменных. Когда есть исходная таблица tab типа id val1 val21111222122.........сумма с накоплением получается так: Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 15:29 |
|
||
|
Запрос на формирование суммы по полям с группировкой по дате из нескольких таблиц
|
|||
|---|---|---|---|
|
#18+
Akina, Полный Респект. Это шикардос! а если с убывающим итогом то это еще в 1 селект обернуть и ву-а-ля: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Результат: Код: sql 1. 2. 3. 4. 5. 6. 7. Огромное человеческое спасибо! P.S.: Классный форум. Супер скорость ответов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2018, 16:18 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39718205&tid=1829540]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 156ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...