Що робить функція SQL CONCAT?


Робота з базами даних постійно пов'язана з отриманням результатів запитів. І в деяких випадках цю інформацію необхідно вивести на екран певним чином, або об'єднати з іншими даними. Для вирішення цієї проблеми існує функція SQL – CONCAT.

Що робить функція CONCAT?

При виконанні деяких робіт з базами даних, виникає потреба у з'єднанні рядків з додатковими даними або між собою. Для рішення такої задачі існує функція SQL – CONCAT. При її використанні дві або більше рядків будуть об'єднані в одну. При цьому операція конкатенації рядків буде правильно проведена як при роботі з рядками, так і з числовими змінними. 


В деяких базах даних SQL CONCAT має кілька різновидів. Так, в MySQL вона має свій аналог – CONCAT_WS. Відмінність між функціями несуттєві: у разі роботи першої, при об'єднанні з аргументом, значення якого дорівнює NULL, результатом конкатенації буде NULL, а при використанні другого варіанту об'єднання нульовою операнд буде просто пропущено.

Синтаксис функції

При використанні функції CONCAT, синтаксис SQL зобов'язує програміста використовувати аргументи в тому порядку, в якому операнди повинні бути з'єднані. Сам синтаксис операції конкатенації рядків досить простий: після ключового слова CONCAT в дужках через кому вказуються всі необхідні аргументи або рядка за порядком, а після закриваючі дужки, у разі потреби, указується ключове слово AS і ім'я змінної, куди буде записано отриманий результат. Шаблон функції CONCAT виглядає наступним чином: 


CONCAT (string1 строка2[, строка 3, ])[AS имя_переменной]. Варто відзначити, що у якості аргументів функції може використовуватися як операнд чисельного та значення рядка, так і деяка функція, що повертає результат. Наприклад, сама операція SQL CONCAT. Таким чином, операція підтримує принцип вкладеності.

Як обійтися без використання CONCAT?

У разі коли є необхідність обійтися без використання операції, або програмісту невідома функція CONCAT, SQL пропонує ще один варіант здійснення конкатенації рядків. Для цього необхідно скористатися оператором "+", однак такий підхід має ряд особливостей, які необхідно враховувати при роботі з ним.
Що робить функція SQL CONCAT?
При використанні функції "+" у випадку, якщо операндами є числові значення, результатом операції буде звичайне додавання чисел, а при необхідності об'єднати число з рядком без явного перетворення програма видасть помилку. Так, при виконанні наступного запиту результатом буде значення числа "6": SELECT 1+2+3. В іншому обидва способи ідентичні і повертають однаковий результат.