Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
как решить?
|
|||
|---|---|---|---|
|
#18+
SELECT * FROM PAYMENT - 1-я таблица должен оплатить ежемесячно (3 раза по 700) ------------------------------------------------------ ID CONTRACT AMOUNT 1 A001 700.00 2 A001 700.00 3 A001 700.00 ------------------------------------------------------- ------------------------------------------------------- SELECT * FROM PAYMENT_HISTORY - 2-я таблица частичных оплат ID CONTRACT PAYED_AMOUNT 1 A001 100.00 2 A001 200.00 3 A001 300.00 4 A001 400.00 5 A001 500.00 ------------------------------------------------------- ------------------------------------------------------- надо получить такой результаты: ID CONTRACT AMOUNT PAYED_AMOUNT DOLG 1 A001 700.00 700 0 2 A001 700.00 700 0 3 A001 700.00 100 600 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2019, 02:29 |
|
||
|
как решить?
|
|||
|---|---|---|---|
|
#18+
написал, но не смог получить результат, указанный выше ( --------------------------------------------------- Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2019, 03:16 |
|
||
|
как решить?
|
|||
|---|---|---|---|
|
#18+
vuginetнаписал, но не смог получить результат, указанный выше ( --------------------------------------------------- SELECT A.ID, A.CONTRACT, A.AMOUNT, CASE WHEN OPL.TOTAL - (CASE WHEN A.AMOUNT < 0 THEN 0 ELSE A.AMOUNT END) < 0 THEN 0 ELSE OPL.TOTAL - (CASE WHEN A.AMOUNT < 0 THEN 0 ELSE A.AMOUNT END) END AS Oplata, A.AMOUNT- CASE WHEN OPL.TOTAL - (CASE WHEN A.AMOUNT < 0 THEN 0 ELSE A.AMOUNT END) < 0 THEN 0 ELSE OPL.TOTAL - (CASE WHEN A.AMOUNT < 0 THEN 0 ELSE A.AMOUNT END) END AS Dolg FROM PAYMENT A CROSS APPLY (SELECT SUM(B.PAYED_AMOUNT) AS TOTAL FROM PAYMENT_HISTORY B) OPL получил: ID CONTRACT AMOUNT Oplata Dolg 1 A001 700.00 800.00 -100.00 2 A001 700.00 800.00 -100.00 3 A001 700.00 800.00 -100.00 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2019, 03:20 |
|
||
|
как решить?
|
|||
|---|---|---|---|
|
#18+
vuginet, ну, тут не всё так прямолинейно, как вы пытаетесь написать. нужно немного хитрее подходить с поставленной задаче: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2019, 04:39 |
|
||
|
как решить?
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, Спасибо Прелестная Анна Вариант а) ----------------------- Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Вариант б) ----------------------- Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2019, 05:09 |
|
||
|
как решить?
|
|||
|---|---|---|---|
|
#18+
Окончательный вариант Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2019, 13:59 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39788141&tid=1688087]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
146ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 469ms |

| 0 / 0 |
