1. SQL / Говнокод #16761

    −119

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    select *
      from (  select ... ,
                     case
                        when     txn_minute >= date '2014-08-01'
                             and txn_minute < date '2014-08-02'
                        then
                           '1 августа'
                        when     txn_minute >= date '2014-08-02'
                             and txn_minute < date '2014-08-03'
                        then
                           '2 августа'
                        when     txn_minute >= date '2014-08-03'
                             and txn_minute < date '2014-08-04'
                        then
                           '3 августа'
                        when     txn_minute >= date '2014-08-04'
                             and txn_minute < date '2014-08-05'
                        then
                           '4 августа'
                        when     txn_minute >= date '2014-08-05'
                             and txn_minute < date '2014-08-06'
                        then
                           '5 августа'
                       ..... 
                        when     txn_minute >= date '2014-08-31'
                             and txn_minute < date '2014-09-01'
                        then
                           '31 августа'
                     end
                        "Дата"
                from txn
               where     txn_minute >= date '2014-08-01'
                     and txn_minute < date '2014-09-01'
            group by ..... 
                    ..... 
                     end) pivot (sum (am)
                          for "Дата"
                          in  ('1 августа',
                    .....
                              '29 августа',
                              '30 августа',
                              '31 августа'))

    Кто-то подсказал правильное решение :-)

    Запостил: Djayn, 24 Сентября 2014

    Комментарии (3) RSS

    • они по ходу даже про
      select datename(day,getdate()) +' ' + datename(month,getdate())
      не слышали
      Ответить
    • PHP-даты - такие заразные...
      Ответить
    • Ко-ко-копипаст мастер!
      Ответить

    Добавить комментарий