Zřetězení řetězců PostgreSQL

Zretezeni Retezcu Postgresql



Když máte dva řetězce, je možné je zřetězit tak, aby vznikl jeden konečný řetězec. Vezmeme-li příklad jména a příjmení uživatele, můžete je zřetězit a získat tak celé jméno. S PostgreSQL existují dvě možnosti, které můžete použít pro zřetězení řetězců. Existuje stará metoda použití operátoru (||) a nová možnost použití CONCAT(). Oba způsoby jsou popsány v tomto příspěvku, abyste zajistili, že pochopíte, jak snadno zřetězit řetězce. Čtěte dále a podívejte se na různé příklady zřetězení řetězců.

Zřetězení řetězců v PostgreSQL

Řetězce můžete zřetězit z různých důvodů. Může se stát, že chcete pracovat pouze s jedním řetězcem, ale chcete extrahovat hodnoty ze dvou sloupců. Z jakéhokoli důvodu, pokud chcete zřetězit řetězce, existují dvě možnosti, které můžete použít pro PostgreSQL. Pojďme si každý podrobně probrat s relevantními příklady.

1. Použití operátoru zřetězení (||)

V PostgreSQL je (||) operátor zřetězení, který můžete použít s řetězci k jejich zřetězení. Můžete mít více než dva řetězce a k jejich spojení použít stejnou logiku.







Například, pokud máte dva řetězce – „Linux“ a „Hint“ který chcete zřetězit, spusťte následující příkaz:





Všimněte si, že jako oddělovač přidáme prázdný řetězec. Navíc pojmenujeme náš výstup jako „name“. První (|)| operátor následuje za prvním řetězcem. Poté přidáme prázdný řetězec jako oddělovač a druhý operátor (||) pro zřetězení těchto dvou řetězců. Pokud máte více řetězců, použijte stejnou logiku.





2. Použití CONCAT()

U první možnosti zřetězení si můžete všimnout, že jsme v našem dotazu vytvořili slovnost. Můžeme však do dotazu vložit slušnost pomocí CONCAT(). Nabízí jednoduchost ve zřetězení a je přímočařejší k použití.

Jeho syntaxe je následující:



SELECT CONCAT(řetězec1, [oddělovač], řetězec2);

Oddělovač je volitelný, ale doporučujeme jej přidat, aby byl výstup čistý. Vše záleží na tom, čeho chcete zřetězením dosáhnout.

Chcete-li znovu spustit stejný příklad, který jsme měli dříve, ale s použitím CONCAT(), spusťte následující příkaz:

SELECT CONCAT(‚Linux‘, ‚‘, ‚Nápověda‘);

Získáme stejný výstup, ale se srozumitelnějším dotazem.

Pokud chceme výstupu přiřadit vlastní název, přidejte klíčové slovo AS následované vlastním názvem, který chceme pro výstup použít.

Následující příklad ukazuje, jak jsme pojmenovali náš výstup jako „celé jméno“:

Předpokládejme, že nepřidáte oddělovač. PostgreSQL sloučí dva řetězce a získáte výstup, jako je ten v následujícím:

Je možné zřetězit řetězce, kde jeden z řetězců má hodnotu null. Možná pracujete s tabulkou a sloupec přijímá hodnotu null. V takovém případě přidání klíčových slov „null“ funguje dobře a je považováno za prázdný řetězec.

Podívejte se na následující příklad a podívejte se, jak demonstrujeme takový případ:

Předpokládejme, že máte tabulku a chcete zřetězit dva sloupce. Postup je stejný, s několika dodatky. Pro ukázku si dáme následující tabulku:

Předpokládejme, že chceme získat celé jméno každého studenta. Musíme zřetězit „fname“ s „lname“. Náš příkaz musí specifikovat cílové sloupce, oddělovač a název tabulky.

Proto jej spustíme následovně:

Práce s CONCAT_WS()

Při práci s CONCAT() jsme viděli, že se mezi řetězce přidává oddělovač. PostgreSQL však nabízí CONCAT_WS(), což je zkratka pro „se separátorem“, která uživatelům umožňuje získat jiný způsob, jak přidat oddělovač.

S touto volbou je oddělovač na prvním místě a poté můžete přidat své řetězce. Cílem je vytvořit objednávku ve vašem dotazu. Chcete-li znovu spustit předchozí dotaz, ale pomocí CONCAT_WS(), máme náš příkaz takto:

Stále dostáváme stejný výstup, ale mění se formát příkazu. Takto zřetězíte řetězce v PostgreSQL.

Závěr

Zřetězení řetězců PostgreSQL je užitečné v různých situacích. Tento příspěvek popsal dva způsoby rychlého zřetězení vašich řetězců. Vyzkoušejte je a pokračujte v cvičení metodou, která vám vyhovuje. Je to tak jednoduché!