SQLテーブル
構造化照会言語(SQL)は、データがテーブルの形式、つまり行と列に格納されるリレーショナルデータベース(RDBMS)です。これらのテーブルはタプルと呼ばれます 、ここで、テーブルの各行はタプルとして引用されています。これらのSQLテーブルで実行できる特定の操作があります。それらのいくつかを以下に示します。
SQL TEMP TABLE
一時テーブルの概念は、SQLサーバーで開始されました。開発者は一時テーブルを使用し、さまざまな方法で開発者を支援します。
一時テーブルは、通常のテーブルが実行できるすべてのタイプの操作を実行できます。これらのテーブルは、tempdbデータベースで生成されます。 、および実行時に開発できます。
一時テーブルの概念は、MySQLバージョン3.23でのみサポートされています。 以上。ただし、古いバージョンでは、ヒープテーブルの概念がありました。 。
一時テーブルは、その動作と範囲に基づいて2つのタイプに分けることができます。
- ローカル一時テーブル
- グローバル一時テーブル
ローカル一時テーブルは現在の接続時間中にのみ使用可能であり、ユーザーが切断すると自動的に削除されます。このタイプのテーブルは、ハッシュ(#)記号で始まります。
CREATE TABLE #local table ( user_id int, user_name varchar (100), user_addrs varchar (150) );
以下は、ローカル一時テーブルを生成するインスタンスです。
グローバル一時テーブル
グローバル一時テーブルは、ダブルハッシュ(##)シンボルによって開始されます。このタイプのテーブルは削除されず、すべてのユーザーに存在します。永続的なテーブルのように動作します。
CREATE TABLE #global table ( user_id int, user_name varchar (100), user_addrs varchar (150) );
以下は、グローバル一時テーブルを生成するインスタンスです。
一時テーブルは2つの方法で削除できます。手動でも自動でも削除できます。
ローカル一時テーブルは、ユーザーがサーバーから切断した直後に必然的に削除されます。
DROP TABLE を使用して、一時テーブルを手動で削除することもできます。 コマンド。
DROP TABLE #tablename
以下は、一時テーブルを削除するためのインスタンスです。通常のテーブルを削除するのと同じです。
SQLクローンテーブル
同じサーバー内の別のSQLテーブルから1つのテーブルを複製または複製することができます。これは、SELECTステートメントを利用して行われます。 。
SELECT * INTO <new_table> FROM <old_table>;
以下は、あるテーブルのコピーを別のテーブルから生成するための構文です。
上記のステートメントは、古いテーブルのすべてのコンテンツを新しいテーブルにコピーします。
以下は、特定の列を古いテーブルから新しいテーブルにコピーするための構文です。
SELECT column1, column2, column3, … INTO <new_table> FROM <old_table>;
場所 句は上記のステートメントで使用することもでき、特定の条件を指定することもできます。また、AS句を使用して新しい列名を指定できます。
例:
次のSource_tableについて考えてみましょう。 。
ID | Fname | Lname | ProjectID | メール | プロフィール | 都市 |
1 | ハリー | ケイン | A1 | [email protected] | SES | コルカタ |
2 | ロン | ウェズリー | B2 | [email protected] | SDE | ムンバイ |
3 | ドビー | 正気 | C3 | [email protected] | SDE | プネ |
4 | アルバス | ドルビー | D4 | [email protected] | HR | アグラ |
5 | スネイプ | ライト | E5 | [email protected] | SDE | デリー |
クエリ:
CREATE TABLE Contact LIKE Source_table;
次のクエリは、 Source_tableと同じ属性を持つ空の構造を作成します 。
出力:
ID | Fname | Lname | ProjectID | メール | プロフィール | 都市 |
クエリ:
INSERT INTO Contact SELECT * FROM Source_table;
次のクエリは、Source_tableのすべてのコンテンツを新しいContactテーブルに複製します。
出力:
ID | Fname | Lname | ProjectID | メール | プロフィール | 都市 |
1 | ハリー | ケイン | A1 | [email protected] | SES | コルカタ |
2 | ロン | ウェズリー | B2 | [email protected] | SDE | ムンバイ |
3 | ドビー | 正気 | C3 | [email protected] | SDE | プネ |
4 | アルバス | ドルビー | D4 | [email protected] | HR | アグラ |
5 | スネイプ | ライト | E5 | [email protected] | SDE | デリー |
クローンテーブルを作成すると、このテーブルは元のテーブルのレコードに影響を与えないため、テストなどのさまざまなデータベース操作に役立ちます。したがって、元のテーブルのデータはそのまま残ります。
これらは、データベース内のテーブルを処理するために開発者が使用する高度なSQLTABLEステートメントの一部です。これらのステートメントは不可欠であり、慎重に処理する必要があります。
これらのステートメントは、テスト、データの一時的な保存などのデータベース操作を行います。 そして、すべてがはるかに簡単かつ高速になります。