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

    −113

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    ..........
     WHERE
         a.id_contact = b.id AND b.company_id = d.id AND
         RIGHT( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( a.phone, ' ', '' ) , '(', '' ) , ')', '' ) , '-', '' ) , '+', '' ) , 7 )
         LIKE '5085532'
     LIMIT 1

    Кусок запроса, увиденный в списке процессов MySQL

    Запостил: Lblss, 07 Ноября 2012

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

    • Когда будет поддерживать регулярные выражения, тогда можно будет что-то возражать.
      Но тут убогая рахитектура. Номер должен изначально лежать без плюсов, смайликов и всего такого.
      Ответить
      • В данном контексте - проверить последние семь заданных цифр телефонного номера - мускуль поддерживает регекспы. По дубовой архитектуре приложения +100500
        Ответить
        • Не переносимо. У меня из личного опыта в одной из прошлых контор были видены специальные джава-функции с поддержкой регэкспов.Оба решения будут одинаково убогие. Индекса по ним не построить всё равно.
          Но я посмотрю на поддержку майскуелем, спасибо. Я редко слежу за новыми фичами.
          Ответить
    • > LIKE '5085532'
      бессмысленное и беспощадное использование LIKE
      Ответить
    • а на html тут нет говнокодов?
      Ответить
    • Нет, главное к подружкам своим, таким же потаскушкам, она меня не ревновала, к проституткам каких иногда приводил прямо домой, в те дни, когда она была «занята» тоже, а тут, к матери родной ревнует!
      Ответить

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