Movatterモバイル変換


[0]ホーム

URL:


You don’t need a vector database - just use Postgres for everything. Read the case study on switching from Pinecone to Neon
PostgreSQL Tutorial
PostgreSQL Tutorial
/Getting Started/Select Into

PostgreSQL SELECT INTO

Summary: in this tutorial, you will learn how to use the PostgreSQLSELECT INTO statement to create a new table from the result set of a query.

If you want to select data into variables, check out thePL/pgSQL SELECT INTO statement.

Introduction to PostgreSQL SELECT INTO statement

The PostgreSQLSELECT INTO statementcreates a new table andinserts data returned from a query into the table.

The new table will have columns with the same names as the columns of the result set of the query. Unlike a regularSELECT statement, theSELECT INTO statement does not return a result to the client.

Here’s the basic syntax of the PostgreSQLSELECT INTO statement:

SELECT  select_listINTO [ TEMPORARY | TEMP ] [ TABLE ] new_table_nameFROM  table_nameWHERE  search_condition;

To create a new table with the structure and data derived from a result set, you specify the new table name after theINTO keyword.

TheTEMP orTEMPORARY keyword is optional; it allows you to create atemporary table instead.

TheTABLE keyword is optional, which enhances the clarity of the statement.

TheWHERE clause allows you to specify a condition that determines which rows from the original tables should be filled into the new table.

Besides theWHERE clause, you can use other clauses in theSELECT statement for theSELECT INTO statement such asINNER JOIN,LEFT JOIN,GROUP BY, andHAVING.

Note that you cannot use theSELECT INTO statement in PL/pgSQL because it interprets theINTO clause differently. In this case, you can use theCREATE TABLE AS statement which provides more functionality than theSELECT INTO statement.

PostgreSQL SELECT INTO examples

We will use thefilm table from thesample database for the demonstration.

PostgreSQL SELECT INTO sample table

1) Basic PostgreSQL SELECT INTO statement example

The following statement uses theSELECT INTO statement to create a new table calledfilm_r that contains films with the ratingR and rental duration 5 days from thefilm table.

SELECT    film_id,    title,    rental_rateINTO TABLE film_rFROM    filmWHERE    rating= 'R'AND rental_duration= 5ORDER BY    title;

To verify the table creation, you can query data from thefilm_r table:

SELECT * FROM film_r;

2) Using the SELECT INTO statement to create a new temporary table

The following example uses theSELECT INTO statement to create a temporary table namedshort_film that contains films whose lengths are under 60 minutes.

SELECT    film_id,    title,    lengthINTO TEMPTABLE short_filmFROM    filmWHERE    length < 60ORDER BY    title;

The following shows the data from theshort_film table:

SELECT * FROM short_filmORDER BY length DESC;

Output:

film_id |        title         | length---------+----------------------+--------     486 | Jet Neighbors        |     59     465 | Interview Liaisons   |     59     409 | Heartbreakers Bright |     59     947 | Vision Torque        |     59...

Summary

  • Use the PostgreSQLSELECT INTO statement to create a new table from the result set of a query.

Last updated on

Was this page helpful?
Thank you for your feedback!

[8]ページ先頭

©2009-2025 Movatter.jp