MySQL MariaDB

MySQL объединяет строковые столбцы с функцией CONCAT

MySQL объединяет строковые столбцы с функцией CONCAT
Объединение строк в MySQL помогает добавлять одну строку в конец другой. Объединение полей строки или банка данных в отдельное поле в наборе результатов возможно с помощью методов управления строками MySQL. В этом руководстве при использовании методов MySQL CONCAT или CONCAT WS вы обнаружите различные способы одновременного объединения двух или более строк.

Откройте клиентскую оболочку командной строки MySQL из приложений и добавьте свой пароль по запросу.

Пример 01: объединение двух столбцов с помощью CONCAT

У нас есть таблица "учитель" в базе данных "данные". Мы хотим связать его строки из двух столбцов «TeachName» и «lastname» без пробела между ними.

Выполните команду SELECT CONCAT, указав имена столбцов в скобках, разделенных запятой. Новый столбец «Имя» создается для хранения в нем объединенных строковых значений, и результат показан ниже.

>> SELECT CONCAT (TeachName, lastname) AS Name FROM data.учитель;

Пример 02: объединить два столбца с пробелом

Предположим, у нас есть приведенная ниже таблица «student» в базе данных «data», и мы хотим объединить ее строки из двух столбцов «Name» и «Subject» с пробелом между значениями.

Используйте приведенную ниже команду SELECT CONCAT, указав имена столбцов в скобках, чтобы объединить строковые значения, разделенные пробелом. Объединенные значения будут сохранены в новом столбце «StudentDetail."В итоговом столбце теперь есть все сцепленные строки.

>> ВЫБРАТЬ СЦЕПИТЬ (Имя, ", Тема) КАК StudentDetail FROM данных.ученик;

Пример 03: объединение нескольких столбцов со специальными символами

Предположим, что приведенная ниже таблица «учитель» объединяет строковые значения из более чем двух столбцов с другим специальным символом.

Попробуйте выполнить команду ниже, добавив знак '-' вместо пробела. В результирующем наборе есть объединенный столбец строк из столбцов таблицы со специальными символами, использованными в нем.

>> SELECT CONCAT (TeachName, '-', subject, '-', qualification) AS Деталь ИЗ данных.учитель;

Пример 04: объединение при получении дополнительных столбцов

Если вы хотите объединить строки столбцов при извлечении других столбцов в том же запросе, вы находитесь в нужном месте. Рассмотрим таблицу «животные» в базе данных «данные» ниже.

Мы объединили его три столбца; «Цвет», «Имя» и «Пол» с использованием пробелов и специальных символов между ними. Объединенная строка из этих столбцов будет сохранена в новом столбце «AnimData». С другой стороны, мы обращались к записям других столбцов «Цена» и «Возраст» из этой таблицы. Записи будут извлечены из строк, где пол животных «M» означает только для мужчин. У вас есть результаты конкатенированных строк из разных столбцов, а также других столбцов, которые были отображены отдельно.

>> ВЫБРАТЬ СЦЕПИТЬ (Цвет, ", Имя, '-', Пол) КАК AnimData, Цена, Возраст ИЗ данных.животные ГДЕ Пол = 'M';

Пример 05: объединить больше строк со строками столбцов

Если вы хотите добавить строки вместо специальных символов или пробелов, вы тоже можете это сделать. Итак, давайте рассмотрим простой пример этого. Предположим, у вас есть таблица «книга» и нижеприведенные данные о книгах, их ценах, авторах, томах и страницах, как показано на рисунке. Теперь мы будем объединять строки из столбцов «Имя», «Автор» и «Цена», используя эту таблицу.

Мы использовали оператор SELECT CONCAT для объединения строк из трех столбцов. Все данные этой таблицы сначала сортируются в порядке возрастания столбца «Имя». В скобках мы указали «Книга», «Автор» и «имеет цену» в качестве дополнительных строк вместо пробелов или специальных символов в кавычках. Теперь функция CONCAT примет первое значение с кавычками «Книга» вместе со значением из столбца «Имя», затем второе значение с перевернутой запятой «написано», за которым следует строковое значение столбца «Автор» и, наконец, третье значение инвертированной запятой «имеет цену», за которым следует значение столбца «Цена». Все эти строки и значения из столбцов будут объединены, и получится полноценное предложение. Это совершенно новое мегастрочное предложение будет сохранено в новом столбце «BookDetail».

>> ВЫБРАТЬ СЦЕПИТЬ ('Книга', Имя, 'Автор', Автор, 'имеет цену', Цена) КАК BookDetail FROM data.книга ЗАКАЗАТЬ Имя ASC;

Пример 06: Объединение строк столбцов с использованием CONCAT_WS

CONCAT_WS кажется уникальным вариантом функции CONCAT, которая позволяет вам указать, какой символ (или символы) будет отброшен в качестве разделителя, касающегося конкатенации строк. Это так же просто, как простая функция CONCAT. Итак, давайте рассмотрим таблицу «social» в базе данных MySQL, содержащую значения о пользователях, их наиболее часто используемых приложениях социальных сетей и возрасте пользователей. Теперь мы выполним конкатенацию с помощью функции CONCAT_WS.

В запросе ниже мы объединили три столбца и сохранили этот объединенный результат в столбце «Подробности». Как вы можете заметить, здесь есть кое-что другое, поскольку мы определили некоторые специальные символы «***» в кавычках перед именами столбцов. Это потому, что мы хотим добавить эти специальные символы между строками столбцов, идущими один за другим, используя функцию CONTACT_WS. Итак, из этого сценария ясно, что нам не нужно помещать специальные символы в запрос после каждого указанного столбца, когда речь идет об одном и том же типе символа.

>> SELECT CONCAT_WS ('***', User, Website, Age) AS Подробно из данных.Социальное;

Заключение:

Теперь вы эффективно разбираетесь во всех важных вещах о конкатенации строковых столбцов и их значений с помощью простой функции CONCAT и функции CONCAT_WS в оболочке MySQL.

Переназначьте кнопки мыши по-разному для разных программ с помощью X-Mouse Button Control
Может быть, вам нужен инструмент, который мог бы изменять управление вашей мышью с каждым приложением, которое вы используете. В этом случае вы можете...
Обзор беспроводной мыши Microsoft Sculpt Touch
Я недавно прочитал о Microsoft Sculpt Touch беспроводная мышь и решил ее купить. Побывав некоторое время, я решил поделиться своим опытом с ним. Эта б...
Экранный трекпад и указатель мыши AppyMouse для планшетов с Windows
Пользователи планшетов часто пропускают указатель мыши, особенно когда они привыкли пользоваться ноутбуками. Смартфоны и планшеты с сенсорным экраном ...