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

    −161

    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
    create temp table data (id serial, o1 money(16,2) default 0, o2 money(16,2) default 0,
    o3 money(16,2) default 0, o4 money(16,2) default 0, o5 money(16,2) default 0,
    o6 money(16,2) default 0, o7 money(16,2) default 0, o8 money(16,2) default 0,
    o9 money(16,2) default 0, o10 money(16,2) default 0, o11 money(16,2) default 0,
    o12 money(16,2) default 0, o13 money(16,2) default 0, o14 money(16,2) default 0,
    o15 money(16,2) default 0, o16 money(16,2) default 0, o17 money(16,2) default 0,
    o18 money(16,2) default 0, o19 money(16,2) default 0, o20 money(16,2) default 0,
    o21 money(16,2) default 0, o22 money(16,2) default 0, o23 money(16,2) default 0,
    o24 money(16,2) default 0, o25 money(16,2) default 0, o26 money(16,2) default 0,
    o27 money(16,2) default 0, o28 money(16,2) default 0, o29 money(16,2) default 0,
    o30 money(16,2) default 0, o31 money(16,2) default 0, f1 money(16,2) default 0,
    f2 money(16,2) default 0, f3 money(16,2) default 0, f4 money(16,2) default 0,
    f5 money(16,2) default 0, f6 money(16,2) default 0, f7 money(16,2) default 0,
    f8 money(16,2) default 0, f9 money(16,2) default 0, f10 money(16,2) default 0,
    f11 money(16,2) default 0, f12 money(16,2) default 0, f13 money(16,2) default 0,
    f14 money(16,2) default 0, f15 money(16,2) default 0, f16 money(16,2) default 0,
    f17 money(16,2) default 0, f18 money(16,2) default 0, f19 money(16,2) default 0,
    f20 money(16,2) default 0, f21 money(16,2) default 0, f22 money(16,2) default 0,
    f23 money(16,2) default 0, f24 money(16,2) default 0, f25 money(16,2) default 0,
    f26 money(16,2) default 0, f27 money(16,2) default 0, f28 money(16,2) default 0,
    f29 money(16,2) default 0, f30 money(16,2) default 0, f31 money(16,2) default 0,
    ftot money(16,2) default 0)

    ... must be funny in the rich man's world ...

    bormand, 18 Января 2013

    Комментарии (6)
  2. SQL / Говнокод #12427

    −139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    CREATE TABLE `forums_list`(
        `forum_id` int unsigned NOT NULL AUTO_INCREMENT,
         ...
        `created` datetime NOT NULL DEFAULT NULL,
        `updated` datetime NOT NULL DEFAULT NULL,

    Alex_Slubsky, 16 Января 2013

    Комментарии (20)
  3. SQL / Говнокод #12297

    −163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    SELECT news_tbl.*, users_tbl.*,
    GROUP_CONCAT(comments_tbl.comments_id) AS commentsid,
    GROUP_CONCAT(CONCAT ('<hr><h6>Navn: ', comments_tbl.name,'</h6>','<p>',comments_tbl.comment, '</p>') SEPARATOR '<br><br>') AS comments, 
    COUNT(comments_tbl.comments_id) AS comments_count
    FROM news_tbl
    LEFT JOIN comments_tbl ON comments_tbl.news_id = news_tbl.news_id
    LEFT JOIN users_tbl ON news_tbl.user = users_tbl.username
    GROUP BY news_tbl.news_id
    ORDER BY news_tbl.news_id DESC LIMIT 5

    Наткнулся на SO.

    Lowezar, 15 Декабря 2012

    Комментарии (7)
  4. SQL / Говнокод #12267

    −161

    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
    CREATE TABLE calendar
    (
      caldate date NOT NULL,
      "month" integer NOT NULL,
      month_txt character varying(10) NOT NULL,
      "year" integer NOT NULL,
      CONSTRAINT calendar_pkey PRIMARY KEY (caldate)
    )
    CREATE TABLE holiday
    (
      id numeric(10,0) NOT NULL DEFAULT nextval('holiday_seq'::regclass),
      caldate date NOT NULL,
      region integer,
      CONSTRAINT holidaypk PRIMARY KEY (id),
      CONSTRAINT fk_hday_caldate FOREIGN KEY (caldate)
          REFERENCES calendar (caldate) MATCH SIMPLE
          ON UPDATE NO ACTION ON DELETE NO ACTION,
      CONSTRAINT holidayfk FOREIGN KEY (region)
          REFERENCES region (id) MATCH SIMPLE
          ON UPDATE NO ACTION ON DELETE NO ACTION
    )

    Вот такая вот структура база в проекте в котором я работаю.
    Причём помимо таблицы calendar и дублирование там информации, обратите внимание на таблицу holiday в эту таблицу записи ручками вносятся о выходных днях или о праздниках, как впрочем и в таблицу calendar

    smpl, 10 Декабря 2012

    Комментарии (12)
  5. SQL / Говнокод #12200

    −117

    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
    declare
      v_bonus_account NUMBER;
      v_MSISDN VARCHAR2(32);
      l_app NUMBER;
      v_Result NUMBER;
      v_Message VARCHAR2(2000);
      var_MSISDN VARCHAR2(32);
      v_Event VARCHAR2(32);
      v_Amount NUMBER;
      o_err VARCHAR2(2000);
    BEGIN
      /* Activate service */ 
      v_Result := wpt.bp_services.add_service
      ( i_app => v_MSISDN,
      i_srv => 400714,
      o_err => v_Message,
      to_date('30/12/2012','DD/MM/YYYY')
      );
    END;

    Локализовал код, вызывающий функцию биллинга у арабов, предложенный ими же. И который не компилится.
    В ответ получаю кучу дописок с вызовами других функций, которые ко всему этому не имеют никакого отношения.
    Как убедить пидарасов в том, что ошибки компиляции и ошибки времени исполнения - это как бы совсем разные вещи?
    А то третья неделя уже идёт...

    SadKo, 26 Ноября 2012

    Комментарии (12)
  6. 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)
  7. SQL / Говнокод #12058

    −123

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    DECLARE @Quarter int --квартал
    DECLARE @Year int --год
    DECLARE @Code int
    ...
    SET @Code =  CAST((CAST(@Year as char(4))+ CAST( (@Quarter) as char))as int)
    ...

    Получаем код квартала вида 20123 - третий квартал 2012 года

    CrazyMORF, 05 Ноября 2012

    Комментарии (7)
  8. SQL / Говнокод #12044

    −117

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Чудеса от Oracle. 
    
    --------- работает: 
    select to_number(null) from dual union all
    select to_char(null)       from dual
    
    ------------- меняем строчки местами - не работает
    select to_char(null)       from dual union all
    select to_number(null) from dual

    Null - это чудо расчудесное, что на дереве растет. Кто его увидит, тот от ужаса замрёт.

    dim1r, 02 Ноября 2012

    Комментарии (15)
  9. SQL / Говнокод #11904

    −153

    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
    create table ISU.Н_ЛЮДИ
    (
      ИД             NUMBER(9) not null,
      ФАМИЛИЯ        VARCHAR2(25) not null,
      ИМЯ            VARCHAR2(15) not null,
      ОТЧЕСТВО       VARCHAR2(20),
      ПИН            VARCHAR2(20),
      ИНН            VARCHAR2(20),
      ДАТА_РОЖДЕНИЯ  DATE not null,
      ПОЛ            CHAR(1) not null,
      МЕСТО_РОЖДЕНИЯ VARCHAR2(200),
      ИНОСТРАН       VARCHAR2(3) not null,
      ФИО            VARCHAR2(80),
      ДАТА_СМЕРТИ    DATE default '09.09.9999' not null,
      КТО_СОЗДАЛ     VARCHAR2(40) default USER not null,
      КОГДА_СОЗДАЛ   DATE default SYSDATE not null,
      КТО_ИЗМЕНИЛ    VARCHAR2(40) not null,
      КОГДА_ИЗМЕНИЛ  DATE default SYSDATE not null
    )

    Мопед не мой.
    PL/SQL, крупная организация.
    Oracle, зачем ты разрешил кириллицу в именах полей?

    Miketsukami, 10 Октября 2012

    Комментарии (36)
  10. SQL / Говнокод #11888

    −119

    1. 1
    select count(*) from jxlspp_prices  where 0!=0  or catid = 2	}

    А вот так его!

    virtual_cia, 07 Октября 2012

    Комментарии (37)