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

    −129

    1. 1
    SELECT COUNT(*)  FROM passwords WHERE program=program AND website=website AND login=login AND password=password

    Okay :(

    Запостил: TBoolean, 12 Января 2012

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

    • Looks like perfect who-it-are.
      Ответить
    • Кто-то проверяет на существование записи в таблице. Ну, бывает. Если в поле password хранится какой-нибудь солёный-замусоленный хэш, так вообще всегда вернется или 0 или 1.
      Единственное, что огорчает - это наименование столбцов, если program и website - это идентификаторы. Или огорчает нормализация БД, если program и website - это имена.
      Ответить
    • Стоп, в условии WHERE сравниваются поля сами с собой а не параметрами? О_О
      о, щи--
      Ответить
      • проверка на null?
        Ответить
        • И естественно, что конструкция
          SELECT COUNT(*)  FROM passwords WHERE program IS NOT NULL AND website IS NOT NULL AND login IS NOT NULL AND password IS NOT NULL

          нынче не круто и смотрится не логично, совсем
          Ответить
          • Ну букв-то меньше получается. Я просто предположил.
            Ответить
            • Можно устроить соревнование норкоманов-буквоёбовбайтоёбов. Я джватжри года занимался sql'ем, иногда делая что-то ради лулзов.
              Мои варианты.
              Отбирает все записи со всеми not-null полями, MySql-only (вроде как), грязно:
              select * from passwords where concat(program, website, login, password) is not null

              Отбирает все записи со всеми null полями, любая Субд стандарта 92:
              select * from passwords where coalesce(program, website, login, password) is null
              Ответить

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