PostgreSQL reťazenie reťazcov

Postgresql Retazenie Retazcov



Keď máte dva reťazce, je možné ich zreťaziť, aby mali jeden konečný reťazec. Ak si vezmeme príklad mena a priezviska používateľa, môžete ich zreťaziť a získať tak celé meno. S PostgreSQL existujú dve možnosti, ktoré môžete použiť na zreťazenie reťazcov. Existuje stará metóda používania operátora (||) a nová možnosť použitia CONCAT(). Oba spôsoby sú zahrnuté v tomto príspevku, aby ste sa uistili, že rozumiete tomu, ako ľahko spojiť reťazce. Čítajte ďalej a pozrite si rôzne príklady zreťazenia reťazcov.

Reťazenie reťazcov v PostgreSQL

Reťazce môžete zreťaziť z rôznych dôvodov. Môže sa stať, že chcete pracovať iba s jedným reťazcom, ale chcete extrahovať hodnoty z dvoch stĺpcov. Z akéhokoľvek dôvodu, ak chcete reťazce spojiť, existujú dve možnosti, ktoré môžete použiť pre PostgreSQL. Poďme diskutovať o každom podrobne s relevantnými príkladmi.

1. Použitie operátora zreťazenia (||)

V PostgreSQL je (||) operátor zreťazenia, ktorý môžete použiť s reťazcami na ich zreťazenie. Môžete mať viac ako dva reťazce a na ich spojenie použiť rovnakú logiku.







Napríklad, ak máte dva reťazce – „Linux“ a „Hint“ ktorý chcete zreťaziť, spustite nasledujúci príkaz:





Všimnite si, že ako oddeľovač pridáme prázdny reťazec. Okrem toho pomenujeme náš výstup ako „meno“. Prvý (|)| operátor nasleduje po prvom reťazci. Potom pridáme prázdny reťazec ako oddeľovač a druhý operátor (||) na zreťazenie týchto dvoch reťazcov. Ak máte viacero reťazcov, použite rovnakú logiku.





2. Použitie CONCAT()

Pri prvej možnosti zreťazenia si môžete všimnúť, že sme v našom dopyte vytvorili slovnosť. Do dotazu však môžeme vložiť slušnosť pomocou CONCAT(). Ponúka jednoduchosť v zreťazení a je priamočiarejší na použitie.

Jeho syntax je nasledovná:



SELECT CONCAT(reťazec1, [oddeľovač], reťazec2);

Oddeľovač je voliteľný, ale odporúčame ho pridať, aby bol výstup čistý. Všetko závisí od toho, čo chcete zreťazením dosiahnuť.

Ak chcete znova spustiť rovnaký príklad, ktorý sme mali predtým, ale pomocou CONCAT(), vykonajte nasledujúci príkaz:

SELECT CONCAT(‚Linux‘, ‚‘, ‚Nápoveda‘);

Získame rovnaký výstup, ale so zrozumiteľnejším dotazom.

Ak chceme dať výstupu viac vlastný názov, pridajte kľúčové slovo AS nasledované vlastným názvom, ktorý chceme použiť pre výstup.

Nasledujúci príklad ukazuje, ako sme pomenovali náš výstup ako „celé meno“:

Predpokladajme, že nepridáte oddeľovač. PostgreSQL spája dva reťazce a dostanete výstup, ako je ten v nasledujúcom:

Je možné zreťaziť reťazce, kde jeden z reťazcov má nulovú hodnotu. Možno pracujete s tabuľkou a stĺpec akceptuje hodnotu null. V takom prípade pridanie kľúčových slov „null“ funguje dobre a považuje sa za prázdny reťazec.

Skontrolujte nasledujúci príklad a zistite, ako demonštrujeme takýto prípad:

Predpokladajme, že máte tabuľku a chcete spojiť dva stĺpce. Proces je rovnaký, s niekoľkými dodatkami. Na ukážku uvedieme nasledujúcu tabuľku:

Predpokladajme, že chceme získať celé meno každého študenta. Musíme spojiť „fname“ s „lname“. Náš príkaz musí špecifikovať cieľové stĺpce, oddeľovač a názov tabuľky.

Preto ho spustíme nasledovne:

Práca s CONCAT_WS()

Pri práci s CONCAT() sme videli, že oddeľovač sa pridáva medzi reťazce. PostgreSQL však ponúka CONCAT_WS(), čo je skratka pre „so separátorom“, aby používatelia mohli získať iný spôsob, ako pridať oddeľovač.

Pri tejto možnosti je oddeľovač na prvom mieste a neskôr môžete pridať svoje reťazce. Cieľom je vytvoriť objednávku vo vašom dopyte. Ak chcete znova spustiť predchádzajúci dotaz, ale pomocou CONCAT_WS(), máme náš príkaz takto:

Stále dostávame rovnaký výstup, ale mení sa formát príkazu. Takto spájate reťazce v PostgreSQL.

Záver

Spájanie reťazcov PostgreSQL je užitočné v rôznych situáciách. Tento príspevok popisuje dva spôsoby rýchleho zreťazenia reťazcov. Vyskúšajte ich a pokračujte v cvičení metódou, ktorá vám viac vyhovuje. Je to také jednoduché!