GNU/Linux >> Znalost Linux >  >> Cent OS

Příkaz PostgreSQL SELECT {Syntaxe + příklady}

Úvod

PostgreSQL je open-source systém pro správu relačních databází (RDBMS). Databázový systém snadno zvládá různé pracovní zátěže a podporuje většinu operačních systémů. Jeho rozšiřitelnost a shoda s SQL dělá z PostgreSQL široce populární RDBMS.

SELECT příkaz je nejběžněji používaný příkaz jazyka pro manipulaci s daty (DML) v PostgreSQL.

V tomto tutoriálu se naučíte používat příkaz PostgreSQL SELECT s jeho úplnou syntaxí a příklady.

Předpoklady

  • Nainstalován a nastaven PostgreSQL.
  • Databáze, se kterou se má pracovat (viz, jak vytvořit databázi.)

Příkaz SELECT PostgreSQL

PostgreSQL SELECT příkaz načte data z jedné nebo několika tabulek v databázi a vrátí data ve výsledkové tabulce, nazývané výsledková sada. Použijte SELECT příkaz vrátit jeden nebo více řádků odpovídajících zadaným kritériím z databázových tabulek.

SELECT příkaz je nejsložitější příkaz v SQL s mnoha volitelnými klíčovými slovy a klauzulemi. Níže uvedené sekce vysvětlují SELECT podrobná syntaxe.

Syntaxe SELECT PostgreSQL

Nejjednodušší forma SELECT syntaxe příkazu je:

SELECT expressions 
FROM tables 
WHERE conditions;
  • expressions jsou všechny sloupce a pole, které chcete mít ve výsledku.
  • tables syntaxe je tabulka nebo tabulky, ze kterých chcete extrahovat výsledky.
  • conditions představují požadavky, které musí být splněny, aby bylo možné vybrat záznamy.

Příklad úplného SELECT syntaxe příkazu je:

SELECT [ ALL | DISTINCT | DISTINCT ON (distinct_expressions) ]
expressions
FROM tables
[WHERE conditions]
[GROUP BY expressions]
[HAVING condition]
[ORDER BY expression [ ASC | DESC | USING operator ] [ NULLS FIRST | NULLS LAST ]]
[LIMIT [ number_rows | ALL]
[OFFSET offset_value [ ROW | ROWS ]]
[FETCH { FIRST | NEXT } [ fetch_rows ] { ROW | ROWS } ONLY]
[FOR { UPDATE | SHARE } OF table [ NOWAIT ]];

Všechny parametry vysvětlíme v sekci níže.

Výběr parametrů PostgreSQL

Možné parametry v SELECT prohlášení jsou:

  • ALL – Volitelný parametr, který vrací všechny odpovídající řádky.
  • DISTINCT – Parametr, který odstraňuje duplikáty ze sady výsledků.
  • DISTINCT ON – Volitelný parametr, který eliminuje duplicitní data na základě distinct_expressions klíčové slovo.
  • expressions - Všechny sloupce a pole, které chcete zahrnout do výsledku. Zadání hvězdičky (* ) vybere všechny sloupce.
  • tables - Zadejte tabulky, ze kterých chcete načíst záznamy. FROM klauzule musí obsahovat alespoň jednu tabulku.
  • WHERE conditions – Klauzule je volitelná a obsahuje podmínky, které musí být splněny, aby bylo možné filtrovat záznamy v sadě výsledků.
  • GROUP BY expressions – Volitelná klauzule, která shromažďuje data z více záznamů a seskupuje výsledky podle jednoho nebo více sloupců.
  • HAVING condition - Nepovinná klauzule použitá v kombinaci s GROUP BY . Omezuje skupiny vrácených řádků pouze na ty, které splňují podmínku TRUE , čímž je filtruje.
  • ORDER BY expression – Volitelná klauzule, která určuje, který sloupec nebo sloupce se mají použít k řazení dat v sadě výsledků.
  • LIMIT – Volitelná klauzule, která nastavuje maximální počet záznamů k načtení z tabulky, určený pomocí number_rows syntax. První řádek v sadě výsledků je určen hodnotou offset_value .
  • FETCH - Volitelná klauzule, která nastavuje maximální počet záznamů v sadě výsledků. Místo fetch_rows zadejte počet záznamů syntax. offset_value určuje první řádek v sadě výsledků.
  • FOR UPDATE - Volitelná klauzule, která uzamkne záznamy potřebné pro spuštění dotazu, dokud nebude transakce dokončena.
  • FOR SHARE - Volitelná klauzule, která umožňuje použití záznamů jinými transakcemi, ale brání jejich aktualizaci nebo vymazání.

Příklady příkazů PostgreSQL SELECT

Níže uvedené sekce ukazují několik případů použití pro SELECT prohlášení.

Příklad 1:Vyberte všechna pole

Nejjednodušší způsob, jak vrátit všechna pole z tabulky a zobrazit veškerý obsah tabulky, je použít PostgreSQL SELECT prohlášení.

Například:

SELECT * FROM actor;

Ve výše uvedeném příkladu výstup zobrazuje všechna pole obsažená v tabulce aktérů.

Příklad 2:Filtrování výsledků tak, aby odpovídaly podmínce

SELECT umožňuje filtrovat výsledky nastavením podmínky. V následujícím příkladu chceme zobrazit pouze názvy filmů, kde je filmovým jazykem angličtina (language_id=1 ):

SELECT title
FROM film
WHERE language_id=1;

Příklad 3:Vyberte pole z více tabulek

PostgreSQL umožňuje zpracovávat data z více tabulek v databázi. Chcete-li získat výsledky z více tabulek v jednom dotazu, použijte JOINS .

Například:

SELECT customer.first_name, customer.last_name, payment.amount
FROM customer 
INNER JOIN payment 
ON customer.customer_id=payment.customer_id
ORDER BY amount DESC;

Ve výše uvedeném příkladu zkombinujeme dvě tabulky pomocí INNER JOIN získat sadu výsledků, která zobrazuje sloupce jména a příjmení z jedné tabulky a částku platby z jiné tabulky. Tyto dvě tabulky jsou spojeny pomocí customer_id sloupec, který je v obou tabulkách stejný.

Výsledky jsou v sestupném pořadí určeném ORDER BY amount DESC doložka.

Příklad 4:Výběr jednotlivých polí z jedné tabulky

PostgreSQL SELECT umožňuje vrátit jednotlivá pole z tabulky.

Například:

SELECT first_name, last_name
FROM actor
ORDER BY last_name ASC;

Výše uvedený příklad poskytuje pouze jména a příjmení herců a vynechává ostatní sloupce. Výstup seřadí výsledky podle příjmení ve vzestupném pořadí.

Příklad 5:Zřetězení sloupců

Pokud chcete, aby vaše sada výsledků spojila několik sloupců do jednoho, můžete použít operátor zřetězení || pomocí SELECT prohlášení. Například:

SELECT 
first_name || ' ' || last_name
FROM 
customer;

V tomto příkladu jsme zřetězili sloupce jméno a příjmení, abychom získali celé jméno každého zákazníka.

Příklad 6:Výpočty

Můžete také použít SELECT k provedení některých výpočtů, ale pak vynecháte FROM doložka. Například:

SELECT 15*3/5;

Výstup je výsledkem matematického výrazu zadaného v SELECT prohlášení.


Cent OS
  1. Instalace PostgreSQL a phpPgAdmin v CentOS

  2. Jak nainstalovat PostgreSQL na CentOS 7

  3. Jak nainstalovat PostgreSQL 10 na CentOS 6 / RHEL 6

  1. Jak zkontrolovat verzi PostgreSQL

  2. Jak vytvořit databázi v PostgreSQL

  3. Databázový server PostgreSQL

  1. Jak nasadit PostgreSQL na Kubernetes

  2. Jak nainstalovat PostgreSQL na CentOS 7

  3. Jak nainstalovat PostgreSQL na CentOS 8