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

    −857

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    # Query_time: 1  Lock_time: 0  Rows_sent: 50807  Rows_examined: 160282
    SELECT  `node`.id, (
    	TO_DAYS( NOW( ) ) - TO_DAYS(  `node`.datecreate )
    	) AS countDay, (
    	`rating_node`.up -  `rating_node`.down
    	) AS countRating, COUNT(  `comments`.cid ) AS countComments,  `node`.view AS countViews
    	FROM node
    	LEFT JOIN  `rating_node` ON  `rating_node`.node_id =  `node`.id
    	LEFT JOIN  `comments` ON  `comments`.nid =  `node`.id
    	GROUP BY  `node`.id;

    фрилансеры...

    Запостил: Venomous, 28 Сентября 2011

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

    • показать все, что скрытоУжас какой. Поясните мысль
      PS:
      >2011 год
      >SQL
      минус
      Ответить
      • У нас жирнющщий тролль завелся, однако...
        Ответить
        • раньше в каждом доме был домовой, теперь у нас в каждом треде есть тролль.
          что это, мутация, что ли?
          Ответить
          • троллевые игры?
            Ответить
          • Это не тролль. Это долбоящер. Единственное, что объединяет его с троллем - зеленый цвет.
            Ответить
    • это так фрилансер составляет рейтинги
      потом на каждую строку результата делает инсерт с новым рейтингом

      ну а вообще половина запросов в сайте не используют индексы
      Ответить
      • ТЗ писалось? Код делает то, что указано в ТЗ? В ТЗ были ограничения на время выполнения запроса/скрипта?
        Мне кажется, фрилансер сделал свою работу, получил (?) свои деньги. В этом плане я бы был на стороне программиста.

        Может быть этот код писался когда еще не было столько много строк в таблицах... тогда всё норм.

        В общем, без знания полной картины невозможно сказать, что это - говнокод. Явных перлов в этом коде нет, то есть, извините, минус.
        Ответить
        • Тут еще вопрос, обсчет идет в реальном времени при каждом запросе соответствующей страницы или все таки выполняется со стороны бэк-энда, например по крону?

          Во втором случае вполне нормально.
          Ответить
          • да, по крону, феил
            надо было лучше выбирать запрос,
            самый долгий починился 1 индексом и заменой порядка джоинов
            Ответить

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