![PostgreSQL CONCAT()](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT.jpg)
Úvod do PostgreSQL CONCAT()
aby zřetězit více než dva řetězce, můžeme použít buď řetězec operátor zřetězení (||) nebo CONCAT() funkce poskytována PostgreSQL. Funkce CONCAT () je vestavěná funkce poskytovaná PostgreSQL od verze 9.1. Funkci PostgreSQL CONCAT() můžeme předat pole prvků řetězce, protože se jedná o VARIADICKOU funkci a jako vstup bere seznam prvků. Funkce PostgreSQL CONCAT () ignoruje vstup NULL, pokud je předán, což znamená, že můžeme zřetězit řetězce, i když jeden ze vstupních řetězců ze seznamu poskytnutých argumentů je NULL.
Syntaxe:
Začněte Svůj Volný Data Science Kurz
Hadoop, Data Science, Statistiky & ostatní
Zvažte následující syntaxi CONCAT() funkce:
CONCAT(string_1, string_2, ...)
Vysvětlení: Funkce PostgreSQL CONCAT () bere jako vstup seznam argumentů.
jak funguje funkce PostgreSQL CONCAT ()?
- PostgreSQL CONCAT() se domnívá, že každý prvek seznam jako argument, jak tato funkce VARIADIC funkce, která může mít libovolný počet prvků jako vstup.
- vstupní argument poskytnutý funkci by měl být typ řetězce nebo konvertibilní na typ řetězce.
- typ řetězce znamená, že vstupní argument by měl mít některý z následujících datových typů:
- Varchar
- Char
- text
Příklady k Provedení PostgreSQL CONCAT() Funkce
Zvažte následující příklad, který spojuje dva řetězce pomocí PostgreSQL CONCAT() funkce. Ilustraci funkce CONCAT pomocí následujícího příkazu SELECT a snímek
SELECT CONCAT ('Edu', 'CBA') as CONCAT_TABLE;
Výstup:
![PostgreSQL CONCAT()-1.1](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.1.png)
vytvoříme tabulku s názvem „student“ pomocí příkazu CREATE TABLE následovně:
create table student
(
stud_id serial PRIMARY KEY,
stud_fname VARCHAR(80) NOT NULL,
stud_lname VARCHAR(80) NOT NULL
);
některá data vložíme do tabulky studentů pomocí příkazu INSERT INTO následujícím způsobem.
INSERT INTO student(stud_fname,stud_lname)
VALUES
('Smith','Johnson'),
('Williams','Jones'),
('Brown','Davis');
ilustrujte výsledek výše uvedeného příkazu INSERT pomocí následujícího příkazu SQL a snímku.
select * from student;
Výstup:
![PostgreSQL CONCAT()-1.2](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.2.png)
Budeme zřetězit hodnoty stud_fname a stud_lname sloupce z tabulky studentů pomocí následujícího SQL příkazu a snímek.
SELECT
CONCAT (stud_fname, ' ', stud_lname) AS "Students fullname"
FROM
Student;
výstup:
![PostgreSQL CONCAT()-1.3](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.3.png)
můžeme zřetězit hodnoty NULL řetězce pomocí metody CONCAT() funkce pomocí následujícího SQL příkazu a snímek.
SELECT CONCAT('EduCBA is', NULL, ' awesome.') AS NULL_concatenated_string;
Výstup:
![Výstup-1.4](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.4.png)
můžeme vidět, že PostgreSQL CONCAT() funkce ignoruje NULL řetězec při vstupu do vstupní argumenty. Současně uvidíme následující výsledek příkazu SQL, který používá operátor zřetězení řetězců ( | | ) ke zřetězení řetězců.
SELECT 'EduCBA is'|| NULL || 'awesome' AS NULL_string;
Výstup:
![Výstup-1.5](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.5.png)
můžeme vidět, se vrátil výsledkem je NULL string, vzhledem k tomu, že funkce CONCAT pracoval správně ignorovat NULL string.
můžeme použít PostgreSQL CONCAT (), funkce pro různé operace, jako potřebujeme vytvořit prohlášení, že nám dá výsledný řetězec tím, že kombinuje následující řetězce:
- ‚Student je.‘
- délka je-li jméno studenta.
- ‚ znaky.
SELECT
stud_fname,
CONCAT('Student name is of ', LENGTH (stud_fname), ' characters' )
FROM
student;
Výstup:
![Výstup-1.6](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.6.png)
PostgreSQL také nám poskytuje funkci s názvem CONCAT_WS, což znamená, zřetězit s separator.
spojíme stud_fname a stud_lname tabulky studentů pomocí následujícího příkazu, který oddělí jedna čárka a mezera.
SELECT
concat_ws (', ', stud_fname, stud_lname) AS student_full_name
FROM
student
ORDER BY
stud_fname;
Výstup:
![Výstup-1.7](https://cdn.educba.com/academy/wp-content/uploads/2020/04/PostgreSQL-CONCAT-1.7.png)
Výhody
- Jak můžeme zřetězit dvě nebo více řetězec pomocí řetězec operátor zřetězení (||), které se nezdaří s NULL argumenty, kde CONCAT() funkce ignoruje NULL argumenty zřetězit je.
- funkce CONCAT () je variadická funkce, která může mít seznam argumentu jako vstup.
- můžeme vytvořit požadovaný výstupní řetězec zřetězením více než jednoho řetězce.
- funkce CONCAT () pracuje pouze na vstupu typu string.
doporučené články
Toto je průvodce PostgreSQL CONCAT(). Zde také diskutujeme definici a jak funguje funkce PostgreSQL Concat ()? Spolu s různými příklady a implementací kódu. Můžete se také podívat na následující články se dozvědět více–
- PostgreSQL JSON
- PostgreSQL JEDINEČNÉ Omezení
- PostgreSQL LIMIT
- PostgreSQL časové Razítko
- Jak Pracovat PostgreSQL?
- PostgreSQL RANDOM / příklady