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

    −116

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    --Если идентификатор аккаунта не передан возвращаем NULL
    IF @AccountID <= 0 OR @AccountID IS NULL RETURN 3;
    
    --Для администраторов всегда возвращаем NULL
    IF @Role = 'admin' OR @Role = 'super_admin' RETURN 3;

    Тело одной из хранимых процедур. Комментарии, видать, протухли.

    dante, 02 Сентября 2011

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

    −119

    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
    standby: function(version) {
            FastChat.destroy();
            curFastChat.standby = true;
            var to = 1,
                cb = function() {
                    if (!curNotifier.is_server) {
                        curFastChat.standbyTO = setTimeout(cb, to * 1000);
                        return;
                    }
                    ajax.post('notifier.php?act=a_get_reload', {
                        version: version
                    }, {
                        onDone: function(navVersion, config) {
                            FastChat.lcSend('gotConfig', {
                                navVersion: navVersion,
                                config: config
                            });
                            FastChat.gotConfig(navVersion, config);
                        },
                        onFail: function() {
                            to *= 2;
                            curFastChat.standbyTO = setTimeout(cb, to * 1000);
                            return true;
                        }
                    });
                };
            cb();
        },
        gotConfig: function(navVersion, config) {
            clearTimeout(curFastChat.standbyTO);
            if (!curFastChat.standby) {
                return;
            }
            setTimeout(function() {
                if (navVersion > stVersions['nav']) {
                    debugLog('appending al loader');
                    headNode.appendChild(ce('script', {
                        type: 'text/javascript',
                        src: '/al_loader.php?act=nav&v=' + navVersion
                    }));
                }
                setTimeout(function() {
                    if (navVersion <= stVersions['nav']) {
                        stManager.add(['notifier.js', 'notifier.css'], function() {
                            FastChat.init(config);
                        })
                        return;
                    }
                    setTimeout(arguments.callee, 100);
                }, 0);
            }, curNotifier.is_server ? 0 : irand(1000, 2000));
        },
        updateVersion: function(version) {
            FastChat.lcSend('standby', {
                version: version
            });
            FastChat.standby(version);
        },
    
        // Local connection: communication between tabs in one browser instanse
        lcSend: function(act, data) {
            // debugLog('fc::lcSend', act, clone(data));
            Notifier.lcSend('fastchat', extend({
                act: act,
                __id: curFastChat.me && curFastChat.me.id || vk.id
            }, data));
        },
        lcRecv: function(data) {
            if (isEmpty(data)) return;
            var act = data.act;
            if (data.__id != (curFastChat.me && curFastChat.me.id || vk.id)) {
                debugLog('drop foreign event', data);
                return;
            }
            delete data.act;
            delete data.__id;
            FastChat.lcFeed(act, data);
        },
        lcFeed: function(act, data) {

    mark, 28 Августа 2011

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

    −114

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    SELECT 
    	h.id, 
    	IF(h.link ='',h.action,CONCAT('<a href=\'',h.link,'\'>',h.action,'</a>')) action,
    	DATE_FORMAT(h.time,'%d.%m.%Y %H:%i') time,
    	u.name user_name
    FROM	
    	history h LEFT JOIN users u ON h.user = u.id ORDER BY h.time DESC

    vkontakte, 24 Августа 2011

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

    −857

    1. 1
    CREATE DOMAIN D_TRIBOOL AS SMALLINT DEFAULT 0 NOT NULL CHECK (VALUE IN (-1,0,1));

    Возможно, вопрос о говнокодистости этой строчки является холиварным. Но меня приведённый отрывок по крайней мере немало удивил.

    konsoletyper, 17 Августа 2011

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

    −851

    1. 1
    2. 2
    3. 3
    4. 4
    ...
    WHERE
                1=1
    ...

    black_dez, 10 Августа 2011

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

    −856

    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
    CREATE TABLE IF NOT EXISTS `region` (
      `id` int(32) NOT NULL auto_increment,
      `vkl` tinyint(1) NOT NULL COMMENT 'Флаг использования/игнорирования (вкл/выкл) страны в проекте',
      `tip` int(8) NOT NULL COMMENT 'тип региона: определяется из таблицы region_tip',
      `samonazvanie` varchar(255) collate utf8_bin NOT NULL COMMENT 'название региона на местном языке',
      `mfa` varchar(255) collate utf8_bin default NULL COMMENT 'запись названия в МФА',
      `stolica` int(32) NOT NULL COMMENT 'столица региона',
      `samonazvanie_1` varchar(255) collate utf8_bin NOT NULL COMMENT 'прочтение названия на русском языке',
      `oficialno_1` varchar(255) collate utf8_bin NOT NULL COMMENT 'официальное название на русском',
      `flag` varchar(255) collate utf8_bin default NULL COMMENT 'флаг населенного пункта',
      `flag_svg` varchar(255) collate utf8_bin default NULL COMMENT 'флаг населенного пункта в векторном формате',
      `gerb` varchar(255) collate utf8_bin default NULL COMMENT 'герб населенного пункта',
      `gerb_svg` varchar(255) collate utf8_bin default NULL COMMENT 'герб населенного пункта в векторном формате',
      `kontinent` int(8) NOT NULL COMMENT 'маска континента',
      `strana_id` int(8) NOT NULL COMMENT 'сслыка на страну',
      `region_id` varchar(32) collate utf8_bin NOT NULL COMMENT 'построение иерархии регионов',
      `ksi1` varchar(16) collate utf8_bin NOT NULL COMMENT 'одномодный КСИ-код',
      `ksi2` varchar(16) collate utf8_bin NOT NULL COMMENT 'двумодный КСИ-код',
      `ksi_sort` varchar(16) collate utf8_bin NOT NULL COMMENT 'сортировочный КСИ-код',
      `ksi_lat` varchar(16) collate utf8_bin NOT NULL COMMENT 'латинский КСИ-код',
      `iso_kod` varchar(16) collate utf8_bin NOT NULL COMMENT 'универсальный код (в большинстве случаев ИСО-код)',
      `telefon` varchar(16) collate utf8_bin NOT NULL COMMENT 'телефонный код',
      `pochta` varchar(16) collate utf8_bin NOT NULL COMMENT 'почтовый индекс',
      `avto` varchar(8) collate utf8_bin NOT NULL COMMENT 'автомобильный код',
      `naselenie` decimal(16,3) NOT NULL COMMENT 'приблизительная численность',
      `ploshad` decimal(16,3) NOT NULL COMMENT 'оценка площади',
      `giddom` varchar(255) collate utf8_bin NOT NULL default 'http://www.giddom.com' COMMENT 'ссылка на проект ГидДом',
      `shirota_gradus` int(8) NOT NULL COMMENT 'градус широты',
      `shirota_minuta` int(8) NOT NULL COMMENT 'минута широты',
      `shirota_sekunda` float(16,2) NOT NULL COMMENT 'секунда широты',
      `dolgota_gradus` int(8) NOT NULL COMMENT 'градус долготы',
      `dolgota_minuta` int(8) NOT NULL COMMENT 'минута долготы',
      `dolgota_sekunda` float(16,2) NOT NULL COMMENT 'секунда долготы',
      `sozdan` datetime default NULL,
      `izmenen` datetime default NULL,
      `vrem_pojas` varchar(8) collate utf8_bin default NULL,
      `dop_nazvanie` text collate utf8_bin COMMENT 'дополнительные (альтернативные) названия страны для различных вариантов транслитерации и исторических названий, возможно использование для поиска',
      `status` int(11) NOT NULL COMMENT 'статус записи о регионе',
      `nazvanie_1` varchar(255) collate utf8_bin NOT NULL,
      `opisanie_1` text collate utf8_bin COMMENT 'Описание населённого пункта на русский языке',
    -- колбаса
      `nazvanie_67` varchar(255) collate utf8_bin NOT NULL COMMENT 'поле для хранения названия на словенском',
      `opisanie_67` text collate utf8_bin COMMENT 'Описание населённого пункта на словацкий языке',
      PRIMARY KEY  (`id`),
      KEY `nazvanie_67` (`nazvanie_67`),
      KEY `strana_id` (`strana_id`),
      KEY `region_id` (`region_id`),
      KEY `vkl` (`vkl`),
      KEY `nazvanie_1` (`nazvanie_1`),
      KEY `nazvanie_2` (`nazvanie_2`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='таблица регионов стран' AUTO_INCREMENT=3746 ;

    Искал хорошую базу Российских городов с областями, регионами, на русском и английском с координатами. На хабре набрёл на это http://geo.webnabor.com/?link=16

    message, 10 Августа 2011

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

    −854

    1. 1
    2. 2
    3. 3
    4. 4
    if rtrim(@parent_ID) = null
        select '' as Parent_ID, '' as Parent_Name where 1 = 2
      else
        select isnull(@parent_ID, '') as Parent_ID, isnull(@parent_name, '') as Parent_Name

    dosGovno, 08 Августа 2011

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

    −155

    1. 1
    SELECT IFNULL(IFNULL(IFNULL(a.title, n.title),IFNULL(al.title, v.video_title)), IFNULL(IFNULL(ps.title,fc.name), IFNULL(IFNULL(bp.title,pp.title), IFNULL(sm.title, sa.title)))) as for_title

    DrFreez, 02 Августа 2011

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

    −850

    1. 1
    2. 2
    3. 3
    4. 4
    SELECT u.*, (SELECT count(*) FROM `projects` WHERE `autor`=u.`id`) as sum
    FROM `users` as u 
    WHERE `sum`>0
    ORDER BY `sum` DESC

    #1054 - Unknown column 'sum' in 'where clause'

    newpdv, 31 Июля 2011

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

    −852

    1. 1
    2. 2
    3. 3
    4. 4
    SELECT DISTINCT relation.itemid, relation.catid, title, owner, image, background, icon, metadesc, publish_up FROM `mh_sobi2_cat_items_relations` AS relation LEFT JOIN
     `mh_sobi2_item` AS items ON relation.itemid = items.itemid WHERE (`published` = '1' AND (relation.catid > 1) AND (`publish_down` > '2011-07-28 05:11:50' OR `publish_
    down` = '0000-00-00 00:00:00' ) AND items.itemid IN(228 , 2091 , 4532 , 4843 , 5255 , 5583 , 13 , 15 , 3553 , 40 , 41 ... еще ~ 5000 элементов) 
    GROUP BY items.itemid ORDER BY items.publish_up DESC  LIMIT 0, 12;

    Такой вот запрос формирует компонент для joomla который называется sobi2

    dron, 28 Июля 2011

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