В
Синтаксис
expr IN (value,...)
Описание
Возвращает 1, если expr равно любому из значений в списке IN, иначе возвращает 0. Если все значения являются константами, они оцениваются в соответствии с типом expr и сортируются. Затем поиск элемента выполняется с помощью бинарного поиска. Это означает, что IN очень быстрый, если список значений IN состоит только из констант. В противном случае преобразование типов происходит в соответствии с правилами, описанными в Преобразовании типов, но применяется ко всем аргументам.
Если expr равно NULL, IN всегда возвращает NULL. Если хотя бы одно из значений в списке равно NULL, и одно из сравнений истинно, результат равен 1. Если хотя бы одно из значений в списке равно NULL и ни одно из сравнений не истинно, результат равен NULL.
Примеры
SELECT 2 IN (0,3,5,7); +----------------+ | 2 IN (0,3,5,7) | +----------------+ | 0 | +----------------+
SELECT 'wefwf' IN ('wee','wefwf','weg');
+----------------------------------+
| 'wefwf' IN ('wee','wefwf','weg') |
+----------------------------------+
| 1 |
+----------------------------------+
Преобразование типов:
SELECT 1 IN ('1', '2', '3');
+----------------------+
| 1 IN ('1', '2', '3') |
+----------------------+
| 1 |
+----------------------+
SELECT NULL IN (1, 2, 3); +-------------------+ | NULL IN (1, 2, 3) | +-------------------+ | NULL | +-------------------+ SELECT 1 IN (1, 2, NULL); +-------------------+ | 1 IN (1, 2, NULL) | +-------------------+ | 1 | +-------------------+ SELECT 5 IN (1, 2, NULL); +-------------------+ | 5 IN (1, 2, NULL) | +-------------------+ | NULL | +-------------------+
См. также
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/in/