Spec-Zone.ru › MariaDB

CONCAT

Синтаксис

CONCAT(str1,str2,...)

Описание

Возвращает строку, полученную в результате конкатенации аргументов. Может иметь один или более аргументов. Если все аргументы являются строками, результат — строка. Если аргументы включают бинарные строки, результат — бинарная строка. Числовой аргумент преобразуется в эквивалентную бинарную строку; если вы хотите этого избежать, можно использовать явное приведение типов, как в этом примере:

SELECT CONCAT(CAST(int_col AS CHAR), char_col);

CONCAT() возвращает NULL если какой-либо аргумент NULL.

Параметр NULL скрывает всю информацию, содержащуюся в других параметрах, из результата. Иногда это нежелательно; чтобы этого избежать, можно:

  • Использовать функцию CONCAT_WS() с пустым разделителем, так как эта функция безопасна для NULL.
  • Использовать IFNULL() для преобразования значений NULL в пустые строки.

Режим Oracle

MariaDB начиная с 10.3

В режиме Oracle начиная с MariaDB 10.3, CONCAT игнорирует NULL.

Примеры

SELECT CONCAT('Ma', 'ria', 'DB');
+---------------------------+
| CONCAT('Ma', 'ria', 'DB') |
+---------------------------+
| MariaDB                   |
+---------------------------+

SELECT CONCAT('Ma', 'ria', NULL, 'DB');
+---------------------------------+
| CONCAT('Ma', 'ria', NULL, 'DB') |
+---------------------------------+
| NULL                            |
+---------------------------------+

SELECT CONCAT(42.0);
+--------------+
| CONCAT(42.0) |
+--------------+
| 42.0         |
+--------------+

Использование IFNULL() для обработки NULL:

SELECT CONCAT('The value of @v is: ', IFNULL(@v, ''));
+------------------------------------------------+
| CONCAT('The value of @v is: ', IFNULL(@v, '')) |
+------------------------------------------------+
| The value of @v is:                            |
+------------------------------------------------+

В режиме Oracle, начиная с MariaDB 10.3:

SELECT CONCAT('Ma', 'ria', NULL, 'DB');
+---------------------------------+
| CONCAT('Ma', 'ria', NULL, 'DB') |
+---------------------------------+
| MariaDB                         |
+---------------------------------+

См. также

  • GROUP_CONCAT()
  • Режим Oracle с MariaDB 10.3
Контент, воспроизведенный на этом сайте, является собственностью соответствующих владельцев, и этот контент не проходит предварительной проверки MariaDB. Мнения, информация и мнения, выраженные в этом контенте, не обязательно отражают точку зрения MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/concat/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API