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

    −168

    1. 1
    decode(coalesce(d.modif19,'0'),'0','0',d.modif19)

    Запостил: siv163, 19 Июня 2014

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

    • было написано в 4 ночи?
      Ответить
    • может его в детстве укусил null pointer exception
      Ответить
    • автор кода к сожалению не известен) но писал он это точно в рабочее время )
      Ответить
    • По-моему,
      decode
      в принципе — говнокод.
      Ответить
      • А что оно делает?
        Ответить
        • это тот же CASE WHEN насколько я помню.
          decode(что выбираем, 1 вариант, действие на первый вариант, 2 вариант, действие на второй вариант,.... ,ну и дефолт)
          Ответить
      • По мне так не говнокод.
        в 1ске есть такой оператор ?(true,0,1)
        Ответить
        • Для этого есть case, который не вызывает переключения контекстов, а также не имеет ограничений на количество "условий". Просто исторически decode появился в Oracle раньше, чем case, насколько я знаю.
          Приведённый же вами пример лишь отчасти повторяет работу case/decode.
          Ответить

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