SQL ServerのSELECT INTOとINSERT INTOのSELECTのケースを説明する
データベース開発の過程で、どうしてもテーブルデータのバックアップが発生し、SELECT INTO ......とINSERT INTO SELECT ......この二つの文はテーブルデータのレプリケーションに使用されますが、以下はその簡単な紹介です。
1、insert into select
ステートメント形式です。Insert Into Table2(column1,column2......) Select value1,value2,value3,value4 From Table1 or テーブル2への挿入 セレクト * テーブル1から
注:このテーブルレプリケーションの方法では、Table2が事前に作成されている必要があります。
例
-1. Create a table
create TABLE Table1
(
a varchar(10),
b varchar(10),
c varchar(10)
) ;
create TABLE Table2
(
a varchar(10),
c varchar(10),
d varchar(10)
);
commit;
-2. Create test data
Insert into Table1 values('Zhao','asds','90');
Insert into Table1 values('money','asds','100');
Insert into Table1 values('Sun','asds','80');
Insert into Table1 values('Li','asds',null);
commit;
--Copy table1 data to table2
Insert into Table2(a, c, d) select a,b,c from Table1;
commit;
--or, this method must require that table2 and table1 have the same number of columns and are compatible in type
Insert into Table2 select * from table1;
commit;
上記のSQLの構文は、OracleとMS SqlServerで同じであり、普遍的に使用することができます。
2、select into......(選択)。
コンパイラはTable1のテーブル構造に基づいてTable2を自動的に作成しますが、基本的にTable1と同じですが、Table2がすでに存在する場合は、コンパイラはエラーを報告します。
このようにOracleとMS SqlServerでは、以下のように少し文が異なります。
ステートメントの形式
<ブロッククオートOracle:Select column1,column2...From Table1としてTable2を作成するか Select * From Table1としてTable2を作成する。
MS SqlServer: Select column1,column2...... into Table2 From Table1 or Select * into Table2 From Table1
例
--oracle
-1. Create the table
create TABLE Table1
(
a varchar(10),
b varchar(10),
c varchar(10)
) ;
commit;
--2. Create test data
Insert into Table1 values('Zhao','asds','90');
Insert into Table1 values('money','asds','100');
Insert into Table1 values('Sun','asds','80');
Insert into Table1 values('Li','asds',null);
commit;
--Copy table1 data to table2
Create Table Table2 as select a,b,c From table1;
Commit;
--or (these two ways of sql can be applied only once)
Create table table2 as select * From Table1;
Commit;
--delete table
drop table table1;
drop table table2;
commit;
--MS SqlServer
-1. Create a table
create TABLE Table1
(
a varchar(10),
b varchar(10),
c varchar(10)
) ;
commit;
--2. Create test data
Insert into Table1 values('Zhao','asds','90');
Insert into Table1 values('money','asds','100');
Insert into Table1 values('Sun','asds','80');
Insert into Table1 values('Li','asds',null);
commit;
--Copy table1 data to table2
Select a,b,c into Table2 From table1;
Commit;
--or (these two ways of sql can be applied only once)
Select * into table2 From Table1;
Commit;
--delete table
drop table table1;
drop table table2;
commit;
SQL Server SELECT INTOとINSERT INTO SELECTの場合についてこの記事は、より関連するSQL Server SELECT INTOとINSERT INTO SELECTの内容は、BinaryDevelopの以前の記事を検索するか、次の関連記事を閲覧を続けてください私はあなたがBinaryDevelopをよりサポートすることを願って後で!この記事は、この記事に導入されています。
関連
-
SQL Server 2019 データベースバックアップ&リストアスクリプト(一括バックアップ)
-
SQLにおける3つの重複排除手法の概要
-
SQL Server テーブルパーティション削除の詳細
-
SQLインジェクションとその防止、マイベイトの基本的な役割について
-
SQLの書き方--行ごとの比較
-
SQL SERVERのコミット・トランザクションのロールバック機構
-
SQL Serverでの判定文(IF ELSE/CASE WHEN)の使用例
-
SQLサーバーのデータベースで、SAユーザーがロックされている問題を解決する
-
SQL クエリ結果カラムのカンマ区切り文字列へのステッチング法
-
データベース毎日練習問題、毎日少しづつ進歩(2)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Spark SQL 2.4.8 データフレームを操作するための2つの方法
-
DataGrip Formatting SQLの実装(カスタムSqlフォーマット)
-
SQLServerクリーンアップログファイルのメソッド事例詳細
-
mybatis動的SQL実装ロジックコード詳細
-
mybatis動的SQLの共通シナリオのまとめ
-
SQL Server のジョブが失敗しました。所有者がサーバーアクセス権を持っているかどうか判断できない
-
SQLServerにおけるJSONドキュメント型データのクエリ問題を解決する。
-
SQLでのmod()関数の余りの使用法
-
そのPHP環境の普遍的なパスワードのSQLインジェクションの脆弱性と防御手段
-
Spark SQLの全体的な実装ロジックの説明