Funkcja CONCAT w języku SQL jest funkcją typu String, która służy do łączenia dwóch lub więcej ciągów. Usługa Concat konwertuje wartości Null na pusty ciąg znaków, gdy wyświetlamy wynik. Ta funkcja służy do łączenia dwóch ciągów znaków w jeden ciąg. The operator służy do łączenia ciągi znaków I ciąg kolumnowy .
Możemy użyć A dosłownie w Funkcja CONCAT. Literał to a liczba, znak , Lub data który zawiera instrukcję SELECT.
Składnia funkcji CONCAT:
SELECT CONCAT (String 1, String 2, String3.., String N) FROM [Source]
Przykład-
SQL> SELECT CONCAT ('FIRST', 'SECOND');
CONCAT('PIERWSZY','DRUGI') | PIERWSZA SEKUNDA |
Aby szczegółowo zrozumieć funkcję CONCAT, rozważmy tabelę work_tbl, która zawiera następujące rekordy:
rok wynalezienia komputera
SQL> SELECT * FROM employee_ tbl ;
ID | NAZWA | PRACA_DATA | DAILY_TYPING_PAGES |
---|---|---|---|
1 | Michael | 2009-02-15 | 270 |
2 | Zeena | 24.03.2003 | 250 |
2 | kachner | 2007-08-19 | 277 |
2 | ostrzegający | 25.04.2007 | 264 |
3 | Radość | 2007-05-17 | 250 |
4 | atrakcyjny | 23.06.2006 | 270 |
5 | delf | 28.05.2004 | 230 |
Jeśli więc chcemy połączyć wszystkie nazwiska, identyfikatory pracowników i datę pracy z powyższej tabeli, możemy to zrobić za pomocą następującego polecenia -
SQL > SELECT CONCAT (id , name , work_date ) ->FROM employee_ tbl; CONCAT(id, name, work_date)
1Michał2009-02-15 |
2Zeena2003-03-24 |
2kachner2007-08-19 |
2warner2007-04-25 |
3radość2007-05-17 |
4-tyre2006-06-23 |
5delph2004-05-28 |
Przykład 2:
SELECT id, first_name, last_name, first_name || last_name, salary, first_name || salary FROM myTable Output (Third and Fifth Columns show values concatenated by operator ||)
Wyjście:
ID | nazwisko | imię | imię||nazwisko | wynagrodzenie | imię||wynagrodzenie |
---|---|---|---|---|---|
1 | fasola | Pan. | Pan Fasola | 10000 | Pan 10000 |
2 | Williama | Sunita | Sunita William | 50000 | Sunita50000 |
3 | tpunkt | Jawa | Punkt Java | 20000 | Java20000 |
4 | &przykład | instruktaż | samouczek&przykład | 90000 | Poradnik90000 |
Uwaga: W powyższym przykładzie użyliśmy „||”, znanego jako operator konkatenacji i służy do łączenia dwóch lub więcej kolumn w zapytaniu wybierającym. Operator ten jest niezależny od typu danych kolumny.
Tutaj połączyliśmy 2 kolumny, tj. imię+nazwisko oraz imię+wynagrodzenie.
Możemy użyć literały łańcuchowe w operatorze CONCAT.
Przykład 1 : Używanie literału znakowego
Składnia
SELECT id, first_name, last_name, salary, first_name||' has salary '||salary as 'new' FROM myTable
Wyjście: (Łączenie trzech wartości i nadawanie nowej „nazwy”)
ID | imię | nazwisko | wynagrodzenie | nowy |
---|---|---|---|---|
1 | Punkt Java | tpunkt | 20000 | Java ma pensję 20000 |
2 | instruktaż | &przykład | 30000 | tutorial ma pensję 30000 |
3 | Shane | Watsonie | 40000 | Shane ma pensję 40000 |
4 | Jennifer | wesz | 60000 | Jennifer ma pensję 60 000 |
Uwaga: w instrukcji Select użyliśmy wynagrodzenia jako literału znakowego. Możemy używać literału daty i literału liczbowego zgodnie z naszymi wymaganiami podanymi w tabeli.
Przykład 2: Używanie znaku i literału liczbowego
Składnia:
SELECT id, first_name, last_name, salary, first_name||100||' has id '||id AS 'new' FROM myTable Output (Making the output readable by concatenating a string with values)
Wyjście:
ID | imię | nazwisko | wynagrodzenie | nowy |
---|---|---|---|---|
1 | Punkt Java | tpunkt | 20000 | Java100 ma identyfikator 1 |
2 | instruktaż | &przykład | 30000 | Tutorial100 ma identyfikator 2 |
3 | Shane | Watsonie | 40000 | Shane100 ma identyfikator 3 |
4 | Jennifer | wesz | 60000 | Jennifer100 ma identyfikator 4 |
W powyższym przykładzie użyliśmy pensja jako dosłowny znak, jak również 100 jako numer autentyczny w naszej instrukcji wyboru.