PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak CONCAT_WS() działa w PostgreSQL

W PostgreSQL CONCAT_WS() funkcja łączy dwa lub więcej ciągów, umieszczając separator między nimi. Separator jest określony przez pierwszy argument.

Składnia

Składnia wygląda tak:

concat_ws(sep text, str "any" [, str "any" [, ...] ])

Gdzie sep text jest separatorem do użycia.

Przykład

Oto przykład do zademonstrowania:

SELECT CONCAT_WS(',', 'Red', 'Green');

Wynik:

Red,Green

W tym przypadku połączyłem ciągi z przecinkiem jako separatorem.

Oto przykład, w którym separatorem jest spacja:

SELECT CONCAT_WS(' ', 'Squid', 'Game');

Wynik:

Squid Game

Łączenie liczb

PostgreSQL łączy tekstową reprezentację swoich argumentów, dzięki czemu możemy łączyć liczby bez konieczności jawnego przekształcania ich w łańcuch:

SELECT CONCAT_WS(',', 1, 2, 3);

Wynik:

1,2,3

Uważaj jednak, jeśli są wiodące zera:

SELECT CONCAT_WS(',', 001, 002, 003);

Wynik:

1,2,3

Argumenty zerowe

Argumenty zerowe są ignorowane:

SELECT CONCAT_WS(' ', 'Player', NULL, 456);

Wynik:

Player 456

Brak argumentów

Wywołanie CONCAT_WS() bez przekazania żadnych argumentów powoduje błąd:

SELECT CONCAT_WS();

Wynik:

ERROR:  function concat_ws() does not exist
LINE 1: SELECT CONCAT_WS();
               ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy mogę wycofać już zatwierdzoną transakcję? (utrata danych)

  2. Wiele generatorów sekwencji Hibernate dla jednej jednostki z PostgreSQL

  3. Pracownicy Rails Resque zawodzą z PGError:serwer nieoczekiwanie zamknął połączenie

  4. PostgreSQL ERROR:anulowanie instrukcji z powodu konfliktu z odzyskiwaniem

  5. jak naprawić OperationalError:(psycopg2.OperationalError) serwer niespodziewanie zamknął połączenie