logo

SQL SELECT INTO 文

SQL SELECT INTO ステートメント は、あるテーブルから新しいテーブルにデータをコピーするために使用されます。

注記: クエリは SQL Server で実行されますが、多くのオンライン SQL エディターでは機能しない可能性があるため、オフライン エディターを使用することをお勧めします。



構文

SQL INSERT INTO 構文は次のとおりです。

SELECT 列 1、列 2…
NEW_TABLE へ SOURCE_TABLE から
WHERE 条件;

INSERT INTO コマンドを使用してテーブルのデータ全体をコピーするには、次の構文を使用します。



Javaから印刷する

選択する *
SOURCE_TABLE から INTO NEW_TABLE
WHERE 条件;

パラメータ

  • NEW_TABLE SOURCE_TABLE と同じスキーマとデータ型を持つ必要があります。
  • の中へ どのテーブルにコピーする必要があるかを意味します。
  • 状態: 条件は、どの行を選択するかを指示するオプションのステートメントです。条件を指定しない場合は、元のテーブルからすべての行を選択するだけになります。

SELECT INTO の例

いくつかの例を見てみましょう SELECT INTO ステートメント SQLで 、使い方を理解しましょう。

まず、Customer テーブルを作成し、ランダムなデータを挿入します。



  CREATE TABLE   Customer(  CustomerID INT   PRIMARY KEY  ,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age int(2),  Phone int(10) ); -- Insert some sample data into the Customers table   INSERT INTO   Customer (CustomerID, CustomerName, LastName, Country, Age, Phone)   VALUES   (1, 'Shubham', 'Thakur', 'India','23','xxxxxxxxxx'),  (2, 'Aman ', 'Chopra', 'Australia','21','xxxxxxxxxx'),  (3, 'Naveen', 'Tulasi', 'Sri lanka','24','xxxxxxxxxx'),  (4, 'Aditya', 'Arpan', 'Austria','21','xxxxxxxxxx'),  (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain','22','xxxxxxxxxx');>

顧客テーブル:

顧客テーブル

顧客テーブル

Googleは何の略ですか

INSERT INTO ステートメントの例

この例では、backupCustomer テーブルを作成し、SELECT INTO ステートメントを使用してそのテーブルにデータを挿入します。

クエリ:

Javaの文字から文字列へ
  CREATE TABLE   backUpCustomer (  CustomerID INTEGER   PRIMARY KEY   AUTOINCREMENT,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age INT,  Phone VARCHAR(10) );    INSERT INTO   backUpCustomer (CustomerName, LastName, Country, Age, Phone)   SELECT   CustomerName, LastName, Country, Age, Phone   FROM   Customer;   SELECT   *   FROM   backUpCustomer ;>

出力:

SELECT INTO ステートメントの出力

顧客テーブルのバックアップ

クエリ

マージソートアルゴリズム

使用 「where」句 Customer から一部の行のみを backUpCustomer テーブルにコピーします。

CREATE TABLE OtherTable (  CustomerID INTEGER PRIMARY KEY AUTOINCREMENT,  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Country VARCHAR(50),  Age INT,  Phone VARCHAR(10) );  INSERT INTO OtherTable (CustomerName, LastName, Country, Age, Phone) SELECT CustomerName, LastName, Country, Age, Phone FROM Customer WHERE Country = 'India';>

出力

出力

出力

クエリ

Customer の一部の列のみを backUpCustomer テーブルにコピーするには、クエリでそれらの列を指定します。

CREATE TABLE backUpCustomers (  CustomerName VARCHAR(50),  LastName VARCHAR(50),  Age INT );  INSERT INTO backUpCustomers (CustomerName, LastName, Age) SELECT CustomerName, LastName, Age FROM Customer;   SELECT * FROM backUpCustomers;>

出力

サイラ・バヌ俳優
出力

出力

INTO SELECT と SELECT INTO の挿入

どちらのステートメントも、あるテーブルから別のテーブルにデータをコピーするために使用できます。ただし、INSERT INTO SELECT はターゲット テーブルが存在する場合にのみ使用できますが、SELECT INTO ステートメントは、ターゲット テーブルが存在しない場合でもターゲット テーブルを作成するため、ターゲット テーブルが存在しない場合でも使用できます。

INSERT INTO backUpCustomer select * from Customer;>

ここのテーブル tempTable が存在するか、事前に作成されている必要があります。そうでない場合はエラーがスローされます。 Insert INTO SELECT と SELECT INTO

SELECT * INTO backUpCustomer from Customer;>

ここでは、テーブルが存在しない場合は SELECT INTO がテーブルを作成し、データをコピーするため、事前に存在する必要はありません。