sammanfattning: i den här handledningen kommer du att lära dig hur du använder den grundläggande PostgreSQL SELECT-satsen för att fråga data från en tabell.
Observera att om du inte vet hur du kör en fråga mot PostgreSQL-databasen med hjälp av psql-kommandoradsverktyget eller pgAdmin-GUI-verktyget kan du kolla in guiden anslutning till PostgreSQL-databas.
en av de vanligaste uppgifterna, När du arbetar med databasen, är att fråga data från tabeller med hjälp av SELECT
– satsen.,
SELECT
– satsen är en av de mest komplexa uttalandena i PostgreSQL. Det har många klausuler som du kan använda för att bilda en flexibel fråga.
på grund av dess komplexitet kommer vi att bryta ner det i många kortare och lättförståeliga handledning så att du kan lära dig om varje klausul snabbare.
SELECT
uttalande har följande klausuler:
- Välj olika rader med
DISTINCT
operatör. - Sortera rader med
ORDER BY
– klausulen. - filtrera rader med
WHERE
klausul., - Select a subset of rows from a table using
LIMIT
orFETCH
clause. - Group rows into groups using
GROUP BY
clause. - Filter groups using
HAVING
clause. - Join with other tables using joins such as
INNER JOIN
,LEFT JOIN
,FULL OUTER JOIN
,CROSS JOIN
clauses. - Perform set operations using
UNION
,INTERSECT
, andEXCEPT
.,
i den här handledningen kommer du att fokusera på klausulernaSELECT
ochFROM
.
PostgreSQL SELECT statement syntax
låt oss börja med den grundläggande formen avSELECT
– satsen som hämtar data från en enda tabell.,
följande visar syntaxen förSELECT
– satsen:
Code language: SQL (Structured Query Language) (sql)
låt oss undersökaSELECT
– satsen mer detaljerat:
- ange först en utvald lista som kan vara en kolumn eller en lista med kolumner i en tabell från vilken du vill hämta data. Om du anger en lista med kolumner måste du placera ett kommatecken (
,
) mellan två kolumner för att separera dem., Om du vill välja data från alla kolumner i tabellen kan du använda en asterisk (*
) stenografi istället för att ange alla kolumnnamn. Listan select kan också innehålla uttryck eller bokstavliga värden. - för det andra anger du namnet på tabellen som du vill fråga data från efter nyckelordet
FROM
.
klausulenFROM
är valfri. Om du inte frågar data från någon tabell kan du utelämnaFROM
– klausulen iSELECT
– satsen.,
PostgreSQL utvärderar klausulenFROM
före klausulenSELECT
I satsenSELECT
:
Observera att SQL-nyckelorden är skiftlägeskänsliga. Det betyder att SELECT
motsvararselect
ellerSelect
. Genom konvention kommer vi att använda alla SQL-nyckelord i versaler för att göra frågorna lättare att läsa.,
PostgreSQL SELECT examples
Låt oss ta en titt på några exempel på att använda PostgreSQLSELECT
uttalande.
Vi kommer att använda följandecustomer
tabell i provdatabasen för demonstrationen.,
1) Använda PostgreSQL SELECT-uttalande för att fråga data från ett kolumnexempel
i det här exemplet används uttalandet SELECT
för att hitta de första namnen på alla kunder från customer
tabell:
Code language: SQL (Structured Query Language) (sql)
här är den partiella utgången:
Lägg märke till att vi lagt till en semikolon (;
) I slutet av SELECT
– satsen., Semikolon är inte en del av SQL-satsen. Det används för att signalera PostgreSQL slutet av en SQL-sats. Semikolon används också för att separera två SQL-satser.,d95b5cdd”>
3) Använda PostgreSQL SELECT-satsen för att fråga data från alla kolumner i ett tabellexempel
följande fråga använder SELECT
– satsen för att välja data från alla kolumner i ett tabellexempel
kolumner i tabellencustomer
:
Code language: SQL (Structured Query Language) (sql)
i det här exemplet använde vi en asterisk (*
) I SELECT
– klausulen, som är en stenografi för alla kolumner., Istället för att lista alla kolumner i SELECT
– klausulen använde vi bara asterisken (*
) för att spara några skrivningar.
det är dock inte bra att använda asterisken (*
) I SELECT
– satsen när du bädda in SQL-satser i programkoden som Python, Java, nod.JS, eller PHP på grund av följande skäl:
- databasprestanda., Antag att du har en tabell med många kolumner och mycket data, kommer
SELECT
– satsen med asterisken (*
) – stenografi att välja data från alla kolumner i tabellen, vilket kanske inte är nödvändigt för applikationen. - applikationsprestanda. Att hämta onödiga data från databasen ökar trafiken mellan databasservern och applikationsservern. Följaktligen kan dina program vara långsammare att svara och mindre skalbar.,
på grund av dessa skäl är det en god praxis att uttryckligen ange kolumnnamnen i SELECT
– klausulen när det är möjligt för att få endast nödvändiga uppgifter från databasen.
och du bör endast använda asterisk (*) stenografi för Ad hoc-frågor som undersöker data från databasen.,
4) Använda PostgreSQL SELECT-uttalande med uttrycksexempel
följande exempel använder SELECT
– uttalandet för att returnera fullständiga namn och e-postmeddelanden till alla kunder:
Code language: SQL (Structured Query Language) (sql)
– utgång:
i det här exemplet använde vi sammanlänkningsoperatören ||
för att sammanlänka varje kunds förnamn, utrymme och efternamn.
Du lär dig hur du använder kolumnalias för att tilldela uttryck mer meningsfulla namn i nästa handledning.,
5) Använda PostgreSQL SELECT-sats med uttrycksexempel
följande exempel använderSELECT
– satsen med ett uttryck. Det utelämnar klausulen FROM
:
Code language: SQL (Structured Query Language) (sql)
här är utgången:
i den här handledningen har du lärt dig hur du använder en grundläggande form av PostgreSQL SELECT
uttalande för att fråga data från en enda tabell.
- var den här handledningen till hjälp ?
- YesNo