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

    0

    1. 1
    2. 2
    3. 3
    SELECT CASE WHEN MIN (t.start_date) IS NULL THEN TO_DATE ('31/12/4712', 'DD/MM/YYYY')
           ELSE MIN (t.start_date) END
      FROM my_table t, ...

    NVL/COALESCE придумали лентяи!
    Это маленький кусочек запроса размером порядка 35 КБ. Там весь этот запрос прекрасен чуть менее чем полностью...

    climber, 23 Мая 2017

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

    −682

    1. 1
    2. 2
    3. 3
    CREATE FUNCTION this_function_check_first_payment_under_agreement_without_previous_periods
    (
    ....

    Ну вот сразу всё понятно)

    Onimys, 17 Августа 2016

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

    −247

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    declare @col int
    set @col = 0
    
    while (select count(distinct id) from #tovar) > @col
    begin
    set @col = (select count(distinct id) from #tovar)
    	insert into #tovar (ParentID, ID, ISFOLDER, Tov) select parentID, ID, ISFOLDER, DESCR from SC23(nolock) where ISMARK = 0 and PARENTID in (select id from #tovar) 
    end

    dsfix, 30 Июля 2015

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

    −160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    select 
    case 
      when count(*) > 0 then '1' 
      else '0' end 
    as "T"  
    from sometable   where searchcode = 'value'

    EXISTS? не, не слышал

    bliznezz, 10 Июля 2015

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

    −160

    1. 1
    n IN (6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25)

    условие n >= 6 выполнено

    lisiy50, 02 Июля 2015

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

    −84

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    BEGIN
    select count(*) INTO var FROM table_name;
    EXCEPTION WHEN OTHERS THEN 
    var:=0;
    END;

    Если что-то пойдет не так...
    P.S.: count() всегда возвращает какое-либо значение. Ошибке не откуда взяться.

    mishok, 01 Июля 2015

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

    −176

    1. 1
    and (ss_1<>'SS0001' or ss_1<>'SS0002' or ss_1<>'SS0010')

    Сегодня на продакшене было обнаружено гениальное выражение в одном из запросов.

    mishok, 01 Июля 2015

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

    −160

    1. 1
    2. 2
    ALTER TABLE db.table ADD CONSTRAINT cu_contents UNIQUE (contents(128));
    ALTER TABLE db.table DROP INDEX cu_contents;

    Создал констрейнт, удал индекс. Загадки Майсиквела.

    wvxvw, 30 Июня 2015

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

    −163

    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
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    SET DELETED ON
    store 0 to r_klot,r_kpot,r_vspot,r_klgv,r_kpgv,r_vspgv,r_klvod,r_kpvod,r_vspvod,r_klngv,r_kpngv,r_vspngv
    store 0 to r_klkan,r_kpkan,r_sumkan,r_klmys,r_kpmys,r_summys,r_klmys1,r_kpmys1,r_summys1,r_vspmys,r_vspkan,r_vspmys1
    STORE 0 TO r_klmys2,r_kpmys2,r_summys2,r_vspmys2
    STORE 0 TO r_klmys3,r_kpmys3,r_summys3,r_vspmys3
    STORE 0 TO r_klmys4,r_kpmys4,r_summys4,r_vspmys4
    STORE 0 TO r_klmys5,r_kpmys5,r_summys5,r_vspmys5
    SELECT 2
    USE tarif INDEX tarif SHARED
    SELECT 1
    use kw SHARED
    SET RELATION TO kodtar INTO tarif
    go top
    do while .not. eof()
    if kw.ot=0
    r_klot=r_klot+1
    r_kpot=r_kpot+kp
    r_vspot=r_vspot+vsp
    endif
    if kw.gv#0 .or. prgvod=0
    r_klgv=r_klgv+1
    r_kpgv=r_kpgv+kp
    r_vspgv=r_vspgv+vsp
    endif
    if kw.vod#0 .or. prv=0
    r_klvod=r_klvod+1
    r_kpvod=r_kpvod+kp
    r_vspvod=r_vspvod+vsp
    endif
    IF tarif.tgv#0
    r_klngv=r_klngv+1
    r_kpngv=r_kpngv+kp
    r_vspngv=r_vspngv+vsp
    ENDIF
    IF kw.kan#0
    r_klkan=r_klkan+1
    r_kpkan=r_kpkan+kp
    r_sumkan=r_sumkan+kan
    r_vspkan=r_vspkan+vsp
    ENDIF
    IF kw.mys#0
    r_klmys=r_klmys+1
    r_kpmys=r_kpmys+kp
    r_summys=r_summys+mys
    r_vspmys=r_vspmys+vsp
    ENDIF
    *газ.плита 2-х комфорочная
    IF kw.gpp=1
    r_klmys1=r_klmys1+1
    r_kpmys1=r_kpmys1+kp
    r_summys1=r_summys1+gps
    r_vspmys1=r_vspmys1+vsp
    ENDIF
    *газ.плита 4-х комфорочная
    IF kw.gpp=2
    r_klmys2=r_klmys2+1
    r_kpmys2=r_kpmys2+kp
    r_summys2=r_summys2+gps
    r_vspmys2=r_vspmys2+vsp
    ENDIF
    *нагреватель проточный (обычная колонка)
    IF kw.gkp=1
    r_klmys3=r_klmys3+1
    r_kpmys3=r_kpmys3+kp
    r_summys3=r_summys3+gks
    r_vspmys3=r_vspmys3+vsp
    ENDIF
    *нагреватель емкостной, газовый (титан)
    IF kw.gkp=2
    r_klmys4=r_klmys4+1
    r_kpmys4=r_kpmys4+kp
    r_summys4=r_summys4+gks
    r_vspmys4=r_vspmys4+vsp
    ENDIF
    *водоотведение
    IF kw.yb#0
    r_klmys5=r_klmys5+1
    r_kpmys5=r_kpmys5+kp
    r_summys5=r_summys5+yb
    r_vspmys5=r_vspmys5+vsp
    ENDIF
    skip
    enddo
    REPORT FORM spr1r TO PRINTER prompt PREVIEW 
    ---
    set date british
      select 2
     use sprstr index sprstr SHARED 
    SET ORDER TO TAG KST OF SPRSTR.CDX
    SELE 3
     USE TARIF INDEX TARIF SHARED
      select 1
     use kw index kw1 SHARED 
    
     set relation to kst into b,kodtar INTO c
    SET FILTER TO ls=r_ls  
    sdr=DTOC(thisform.text1.Value)
    REPORT FORM subsid PREVIEW

    Вот такой пиздец мне надо сопровождать и дописывать. Судя по говённости кода, по уёбскому названию переменных, по дико ебланской манере писать код - аффтар из Дульфистов, только у них может получиться настолько уёбский код.

    DelphiGovno, 24 Июня 2015

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

    −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
    CREATE TABLE [dbo].[Images](
    	[id] [int] IDENTITY(1,1) NOT NULL,
    	[category] [int] NOT NULL,
    	[tag] [nvarchar](16) NOT NULL,
    	[description] [nvarchar](128) NOT NULL,
    	[comment] [nvarchar](1024) NULL,
    	[code01] [nvarchar](max) NULL,
    	[code02] [nvarchar](max) NULL,
    	[code03] [nvarchar](max) NULL,
    	[code04] [nvarchar](max) NULL,
    	[code05] [nvarchar](max) NULL,
    	[code06] [nvarchar](max) NULL,
    	[code07] [nvarchar](max) NULL,
    	[code08] [nvarchar](max) NULL,
    	[code09] [nvarchar](max) NULL,
    	[code10] [nvarchar](max) NULL,
    	[code]  AS (rtrim(((((((((((((((((((((((((((((rtrim(replace(replace(coalesce([code01],''),char((13)),' '),char((10)),' '))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code02],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code03],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code04],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code05],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code06],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code07],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code08],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code09],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10)))+rtrim(replace(replace(coalesce([code10],''),char((13)),' '),char((10)),' ')))+char((13)))+char((10))))
    )

    10 нормальная форма (_*_)

    drup, 28 Мая 2015

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