Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Замена значений в Select / 18 сообщений из 18, страница 1 из 1
20.07.2018, 11:41
    #39676758
Rulezzz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Добрый день!

Есть такая выборка:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT *
FROM
     (SELECT to_char(DT,'yyyy.mm.dd') "Дата", DECODE(SERIES, null, 02,SERIES) as SERIES, amount
      FROM main_data where 
      AND DT >= TO_DATE('06.07.2018 00:00:00','dd.mm.yyyy hh24:mi:ss')
      AND DT <= TO_DATE('06.07.2018 23:59:59','dd.mm.yyyy hh24:mi:ss')
      AND (Kind='10' or Kind='20')      
     ) PIVOT (count(amount) AS "Кол-во",SUM(amount) AS "Сумма"
              FOR SERIES IN (02, 10, 20, 30)
               )
ORDER BY 1;



Подскажите как добавить условие, если Kind = 20, то amount сделать отрицательным, то есть умножить на -1 ?
...
Рейтинг: 0 / 0
20.07.2018, 11:46
    #39676765
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzz,

знать про PIVOT, но не знать про CASE/DECODE - это прям нонсенс какой-то...
...
Рейтинг: 0 / 0
20.07.2018, 11:46
    #39676766
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Код: plsql
1.
case when Kind='20'

Rulezzz,
...
Рейтинг: 0 / 0
20.07.2018, 12:11
    #39676794
Rulezzz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
123йй,

пробовал я с CASE, что то не сложилось, то ошибка, то хрень какую то выдает, можно поподробнее синтаксис плз


Щукина Анна,
авторзнать про PIVOT, но не знать про CASE/DECODE - это прям нонсенс какой-то...

я месяц назад вообще про Oracle не знал, да и программирование не самая моя сильная сторона ... так что прошу без язвлений :)
...
Рейтинг: 0 / 0
20.07.2018, 12:27
    #39676814
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzzпрограммирование не самая моя сильная сторона

Насколько сильны навыки поиска ?
...
Рейтинг: 0 / 0
20.07.2018, 12:34
    #39676820
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzz123йй,

пробовал я с CASE, что то не сложилось, то ошибка, то хрень какую то выдает, можно поподробнее синтаксис плз показывайте, как пробовали... так будет проще понять, где вы ошибались...
...
Рейтинг: 0 / 0
20.07.2018, 12:44
    #39676825
Rulezzz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
авторdmdmdm,
Насколько сильны навыки поиска?

ух ты, ГУГЛА какая то, прям диво-дивное ... написал же искал, пробовал, что то не выходит

если попробовать так, то выводятся нулевые данные
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT *
FROM
     (SELECT to_char(DT,'yyyy.mm.dd') "Дата", DECODE(SERIES, null, 02,SERIES) as SERIES, amount, 
     case when kind='20' then amount*'-1' end
      FROM main_data where 
      AND DT >= TO_DATE('06.07.2018 00:00:00','dd.mm.yyyy hh24:mi:ss')
      AND DT <= TO_DATE('06.07.2018 23:59:59','dd.mm.yyyy hh24:mi:ss')
      AND (Kind='10' or Kind='20')      
     ) PIVOT (count(amount) AS "Кол-во",SUM(amount) AS "Сумма"
              FOR SERIES IN (02, 10, 20, 30)
               )
ORDER BY 1;
...
Рейтинг: 0 / 0
20.07.2018, 12:57
    #39676838
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzz
Код: plsql
1.
amount*'-1'


это Пять ! RTFM else
...
Рейтинг: 0 / 0
20.07.2018, 13:02
    #39676843
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzzя месяц назад вообще про Oracle не знал, да и программирование не самая моя сильная сторона ... так что прошу без язвлений :)
зачем так явно врать ?
...
Рейтинг: 0 / 0
20.07.2018, 14:10
    #39676891
Rulezzz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
автор123йй,
это Пять ! RTFM else

да все возможные материалы, я изучил, применить этот case к данной ситуации так и не вышло, а все вместо того чтоб объяснить и подсказать где ошибка, стебут и кидают ссылки

авторзачем так явно врать ?

ну да, твоя правда, быстро время летит, как будто было вчера
...
Рейтинг: 0 / 0
20.07.2018, 14:13
    #39676897
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzzа все вместо того чтоб объяснить и подсказать где ошибка, стебут и кидают ссылкиВо ламерьё пошло: ещё и кичится своим невежеством.
...
Рейтинг: 0 / 0
20.07.2018, 14:34
    #39676931
MaximaXXL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Rulezzz
да все возможные материалы, я изучил, применить этот case к данной ситуации так и не вышло ...

Вот прям удивлен, если человек ИЗУЧИЛ ВСЕ ВОЗМОЖНЫЕ материалы, то как ему помочь?
Я так и не закончил изучать ВСЕ возможные и иногда нахожу очень даже оригинальные решения на этом форуме.

З.Ы. это как в анекдоте:
Звонок оператору пейджеров:
- До меня не дошло сообщение.
- Прочитайте его еще раз!
...
Рейтинг: 0 / 0
20.07.2018, 15:19
    #39676968
Rulezzz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
авторElic,
Во ламерьё пошло: ещё и кичится своим невежеством.

Еще раз говорю, у меня нет цели знать sql на 5 балов, оно мне не нужно. Мне надо, чтоб работал один простенький запросик и я дальше пошел бы занимать своими делами.
Если ситуация для вас простейшая, почему не объяснить?!?!
Думал помогут по братски ... так нет же, тут хули все эксперты, павлины кнопочные, которые дрочат на свою невъебенность!
Чтоб вы так к врачу пришли, а вам ссылку на медучебник и пинком под сраку.
...
Рейтинг: 0 / 0
20.07.2018, 15:45
    #39676984
MaximaXXL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
RulezzzавторElic,
Во ламерьё пошло: ещё и кичится своим невежеством.

Еще раз говорю, у меня нет цели знать sql на 5 балов, оно мне не нужно. Мне надо, чтоб работал один простенький запросик и я дальше пошел бы занимать своими делами.
Если ситуация для вас простейшая, почему не объяснить?!?!
Думал помогут по братски ... так нет же, тут хули все эксперты, павлины кнопочные, которые дрочат на свою невъебенность!
Чтоб вы так к врачу пришли, а вам ссылку на медучебник и пинком под сраку.

Ну если Вы переходите на понятие "врача" то в вашем случае получается так:
К Вам приходит больной и просит его вылечить. Вы бежите на форум (в курилку) к врачам и показываете анализы с фразой, поставте быстренько диагноз и выпишите таблетки.
Вам говорят: - Ну вы же врач, почитайте про КОНКРЕТНУЮ симптоматику (и даже дают ссылки)
Вы с фразой: Думал помогут по братски ... так нет же, тут хули все эксперты, павлины кнопочные, которые дрочат на свою невъебенность!

Если Вы не хотите разбираться (Мне надо, чтоб работал один простенький запросик и я дальше пошел бы занимать своими делами.), тут есть раздел Работа, думаю там Вам помогут быстрее. Для этого его и делали.
Или не беритесь за sql вообще. Вы же, я надеюсь, за врачевание не беретесь.
...
Рейтинг: 0 / 0
20.07.2018, 15:53
    #39676992
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
RulezzzЕсли ситуация для вас простейшая, почему не объяснить?!?!
да потому что вам западло сходить по ссылкам и посмотреть там
Searched CASE Example и применить его.
...
Рейтинг: 0 / 0
20.07.2018, 17:20
    #39677038
IMNO
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SELECT *
FROM
     (SELECT to_char(DT,'yyyy.mm.dd') "Дата", DECODE(SERIES, null, 02,SERIES) as SERIES, 

           CASE 
               WHEN kind = '20'
                 THEN amount * (-1)
               ELSE amount
             END AS amount_

      FROM main_data where 
      DT >= TO_DATE('06.07.2018 00:00:00','dd.mm.yyyy hh24:mi:ss')
      AND DT <= TO_DATE('06.07.2018 23:59:59','dd.mm.yyyy hh24:mi:ss')
      AND (Kind='10' or Kind='20')      
     ) PIVOT (count(amount_) AS "Кол-во",SUM(amount_) AS "Сумма"
              FOR SERIES IN (02, 10, 20, 30)
               )
ORDER BY 1;



Хочу сказать, что меня тоже раздражает, когда вместо одного ответа, автору начинают объясняют, что он разгильдяй.
В итоге вместо двух сообщений в теме(вопрос-ответ) тема разрастается на несколько страниц, а ответа, как не было так и нет.
Спрашивается, зачем вообще было что-то отвечать? И автору не помог и время зря потратил.

С другой стороны хочу посоветовать автору, не лететь сразу на форум для создания темы, а попробовать самому разобраться с проблемой. Как только возникла проблема, нужно придержать свой "жгучий желаний" лететь на форум создавать тему.
Попробуй погуглить, воспользоваться поиском, документацию почитать. Если уж желание идти на форум сильно велико, то сходить попить кофе. К моменту, когда стаканчик опустеет, в голову может прийти решение проблемы.
...
Рейтинг: 0 / 0
20.07.2018, 17:39
    #39677044
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
IMNOтема разрастается на несколько страницХочешь поговорить о разрастании тем?...

IMNOзачем вообще было что-то отвечатьРавновопросительно безотносительно сути ответа.
...
Рейтинг: 0 / 0
20.07.2018, 17:55
    #39677050
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена значений в Select
IMNOСпрашивается, зачем вообще было что-то отвечать? И автору не помог и время зря потратил.

Доведем до абсурда (хотя на самом деле вполне реальность).
Сын просит Айфон XX.
Зачем что-то объяснять, время тратить? Купил, и все.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Замена значений в Select / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]