П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 175018 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 71983 раз(а).

Учебник HTML.
Просмотров 72069 раз(а).

Руководство по PHP5.
Просмотров 42680 раз(а).

Хостинг через призму DNS.
Просмотров 49170 раз(а).

Подборка текстов стандартных документов.
Просмотров 43111 раз(а).

Учебник PHP - Самоучитель
Просмотров 49448 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 49695 раз(а).

Внешние атаки...
Просмотров 40242 раз(а).

Учебник PHP.
Просмотров 35270 раз(а).

SSI в примерах.
Просмотров 26552 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Глава 6. Справочник по языку MySQL
Пред.     След.

6.3. Функции, используемые в операторах SELECT и WHERE
6.3.1. Операторы и функции общего назначения

6.3.1.3. Логические операторы

В SQL, все логические операторы возвращают TRUE (ИСТИНА), FALSE (ЛОЖЬ) или NULL (UNKNOWN, неизвестно). В MySQL это реализовано как 1 (TRUE, ИСТИНА), 0 (FALSE, ЛОЖЬ) или NULL. Это справедливо для большинства SQL СУБД, однако некоторые возвращают любое положительное значение как значение TRUE.

  • NOT, !

    Логическое НЕ. Возвращает 1, если операнд равен 0, 0 если операнд - ненулевая величина, и NOT NULL возвращает NULL.

    mysql> SELECT NOT 10;
    -> 0
    mysql> SELECT NOT 0;
    -> 1
    mysql> SELECT NOT NULL;
    -> NULL
    mysql> SELECT ! (1+1);
    -> 0
    mysql> SELECT ! 1+1;
    -> 1
    

    Последний пример дает 1, поскольку данное выражение вычисляется тем же способом, что и (!1)+1.

  • AND, &&

    Логическое И. Дает 1 если все операнды ненулевые и не NULL, 0 если один или более операндов равны 0, или NULL в остальных случаях.

    mysql> SELECT 1 && 1;
    -> 1
    mysql> SELECT 1 && 0;
    -> 0
    mysql> SELECT 1 && NULL;
    -> NULL
    mysql> SELECT 0 && NULL;
    -> 0
    mysql> SELECT NULL && 0;
    -> 0
    

    Обратите внимание, что версии MySQL до 4.0.5 прекращали вычисление, встретив первый NULL, вместо того, чтобы продолжать вычисление выражений с целью нахождения возможных значений 0. Это означает, что в этих версиях выражение SELECT (NULL AND 0) возвращает NULL вместо 0. В 4.0.5 код был переписан так, чтобы оптимизация сохранилась, но результат всегда был таков, как требует того ANSI.

  • OR, ||

    Логическое ИЛИ. Возвращает 1, если любой из операндов не 0, NULL если один из операндов NULL, в остальных случаях возвращает 0.

    mysql> SELECT 1 || 1;
    -> 1
    mysql> SELECT 1 || 0;
    -> 1
    mysql> SELECT 0 || 0;
    -> 0
    mysql> SELECT 0 || NULL;
    -> NULL
    mysql> SELECT 1 || NULL;
    -> 1
    
  • XOR

    Логический XOR (побитовое сложение по модулю 2) Возвращает NULL если любой из операндов - NULL. Для не-NULL операндов, возвращает 1 если нечетное количество операндов - не 0.

    mysql> SELECT 1 XOR 1;
    -> 0
    mysql> SELECT 1 XOR 0;
    -> 1
    mysql> SELECT 1 XOR NULL;
    -> NULL
    mysql> SELECT 1 XOR 1 XOR 1;
    -> 1
    

    a XOR b математически эквалиентно (a AND (NOT b)) OR ((NOT a) and b).

    XOR был реализован в 4.0.2.


Назад Начало Главы Начало Раздела Начало Подраздела Вперед

Пред. Глава След. Глава
Глава 5. Оптимизация в MySQL Начало Книги Глава 7. Типы таблиц MySQL


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru