基本的な SQL テーブル操作

基本的な SQL テーブル操作

このチュートリアルでは、テーブルの作成と削除を含む基本的な SQL テーブル操作を実行する方法を説明します。テーブル内のレコードの挿入、削除、更新についても説明します。

さらに、SQLの基本的なテーブル操作に対して、Create、Read、Update、および Delete を表すCRUDという用語も使用します。

Excel を使用して作業したことがある場合は、Excel ファイルをデータベースとして、SQLで作成したテーブルをExcel ページとして、レコードを Excel シート内の行として視覚化してください。

目次

SQL テーブル操作: CREATE TABLE

CREATE TABLEコマンドから始めましょう。テーブルを作成するには、まずCREATE TABLEコマンドを入力する必要があります。次にテーブル名を入力します。使用するテーブル名はデータベース内に存在してはならず、存在しない場合はデータベースが作成されないことに注意してください。 

基本的な SQL テーブル操作

その後、開き括弧と閉じ括弧を追加する必要があります。次に、括弧の間に列名データ型を追加します。

基本的な SQL テーブル操作

クエリからテーブルを作成することもできます。これを行うには、 SELECT * INTO person.persons_copy FROM person.personsコマンドを使用します。このコマンドは、 person.personsテーブルと同じ構造とレコードを持つperson.persons_copyという名前のテーブルを作成します。

基本的な SQL テーブル操作

SQL でのレコードの操作

テーブルを作成したら、INSERTコマンドを使用してレコードを入力できます。以下で強調表示されているコマンドは、dbo.coursesという名前のテーブルに値を入力します。

基本的な SQL テーブル操作

間違ったエントリを作成し、それを削除したい場合は、DELETEコマンドを使用して削除できます。以下のコマンドを使用すると、 dbo.coursesテーブル内のIDが1000以上のレコードが削除されます。

基本的な SQL テーブル操作

この操作では、削除するレコードを指定するのに役立つWHEREコマンドを使用することが重要です。そうしないと、このコマンドによって、指定したテーブルからすべてが削除されてしまいます。

テーブル内のすべてを削除したい場合は、TRUNCATE TABLEコマンドを使用できます。以下で強調表示されているコマンドは、テーブルdbo.courses内のレコードをクリアします。

基本的な SQL テーブル操作

レコードの更新は非常に簡単です。この操作を行うにはUPDATEコマンドを使用します。以下で強調表示されているコマンドは、 dbo.coursesテーブル内の名前「Dax」を「 DAX 」に更新します。

基本的な SQL テーブル操作

お気づきのとおり、この例ではSETコマンドを使用して、更新する必要がある列と値を特定しました。また、dbo.coursesテーブル内で更新する既存のレコードを指すWHEREコマンドも追加しました。

SQL テーブル操作: DROP TABLE

DROP TABLEコマンドを使用するだけでテーブルを削除することもできます。この例で強調表示されているコマンドは、指定されたテーブルを削除する方法を示しています。

基本的な SQL テーブル操作

この関数はTRUNCATE TABLEコマンドに似ています。ただし、これら 2 つの主な違いは、TRUNCATE TABLEコマンドがテーブルをクリアするためにのみ使用されることです。一方、DROP TABLEコマンドは、特定のテーブルをそのレコードとともに削除するために使用されます。

それでは、 Microsoft SQL Server Management StudioでこれらのSQLコマンドを使用してみましょう。

SQL でのテーブルの作成

まずはテーブルの作成から始めましょう。たとえば、dbo.Namesという名前のテーブルを作成するとします。

基本的な SQL テーブル操作

現在、AdventureWorks2012 データベースで作業しています。これは、Microsoft がドキュメント Web サイトで提供するバックアップ データベースです。 

基本的な SQL テーブル操作

右側で、Tablesフォルダーの横にある+アイコンをクリックすると、テーブル名dbo.Namesを持つ既存のテーブルがTablesフォルダーにないことがわかります。 

基本的な SQL テーブル操作

次に、以下のコマンドを実行してdbo.Namesテーブルを作成しましょう。

基本的な SQL テーブル操作

「実行」ボタンをクリックすると、「コマンドは正常に完了しました」というメッセージが表示されます。

基本的な SQL テーブル操作

次に、Tablesフォルダーを更新します。 それを右クリックし、[更新]を選択します。

基本的な SQL テーブル操作

更新すると、 dbo.NamesテーブルがTables フォルダーの下に追加されていることがわかります。

基本的な SQL テーブル操作

dbo.Namesテーブル現在空です。それを右クリックし、オプションから「上位 1000 行を選択」を選択して開きます。

基本的な SQL テーブル操作

開くと、レコードがなく、IDFirstNameLastNameの 3 つの列のみが表示されていることがわかります。 

基本的な SQL テーブル操作

SQL での一時テーブルの作成

一時テーブルは常に#で始まります。これはデータベースに永続的に保存されないため、 潜在的なエラーを見つけて解決したり、SQLクエリを作成したりする場合に非常に役立ちます。 セッションを閉じると、テーブルは削除されます。以下で強調表示されているコマンドを使用して、一時テーブルを作成できます。

基本的な SQL テーブル操作

ここからは、#Namesテーブルを使用して他のコマンドを実行します。

SQL でのテーブルの選択

#Namesテーブルを作成した後、次の強調表示されたコマンドを実行してそのレコードを確認します。

基本的な SQL テーブル操作

ただし、まだレコードを入力していないため、テーブルには 3 つの列のみが表示されます。

基本的な SQL テーブル操作

SQL でのテーブルの削除

#Namesテーブルを削除または削除する場合は、 DROP TABLEコマンドを使用して#Namesテーブルを選択します。

基本的な SQL テーブル操作

その後、SELECT * FROM #Namesコマンドを実行すると、次のようなメッセージが表示されます。

基本的な SQL テーブル操作

これは、 #Namesテーブルを削除したためです。

SQLテーブルへのレコードの挿入

続行する前に、 #Namesテーブルを再作成し、以下のコマンドを使用してそのテーブルにレコードを挿入します。

基本的な SQL テーブル操作

このコマンドは、列(​​ID、FirstName、LastName)の値(1、'Dean'、'Jones') を#Namesに挿入することを意味します。

このコマンドの実行後に次の例のようなメッセージが表示された場合は、レコードがテーブルに追加されたことを意味します。

基本的な SQL テーブル操作

ここでコマンドSELECT * FROM #Namesを実行すると、挿入したばかりのレコードが表示されるはずです。

基本的な SQL テーブル操作

テーブルへの複数のレコードの挿入

テーブルに複数のレコードを挿入するには、複数の値を作成するだけです。ただし、必ず「 , 」で区切ってください。以下のコマンドを参考にしてください。

基本的な SQL テーブル操作

コマンドSELECT * FROM #Namesを再度実行すると、 #Namesテーブルに合計 4 つのレコードが作成されます。

基本的な SQL テーブル操作

テーブル内のレコードの更新

次に、 #Namesテーブルのレコードを更新しましょう。John のID を10に変更してみましょう。まず、UPDATEコマンドを使用して、 #Namesを選択します。その後、コマンドSET ID = 10およびWHERE FirstName = 'John'を追加して、名を使用してJohnを選択し、そのIDを10に設定します。

基本的な SQL テーブル操作

上記のコマンドは John のIDを10に更新します。 

次に、コマンドSELECT * FROM #Namesを再度実行して、レコードが正常に更新されたかどうかを確認します。 

基本的な SQL テーブル操作

その結果、ジョンのID は10に更新されました。

テーブル内のレコードの削除

今回は#Namesテーブルのレコードを削除します。たとえば、ID値が3のレコードを削除したいとします。

基本的な SQL テーブル操作

これを行うには、コマンドDELETE FROM #Namesを使用してから、WHERE ID = 3 を使用してみましょう。

基本的な SQL テーブル操作

削除した後、コマンドSELECT * FROM #Namesを再度実行すると、 #Namesテーブルには 3 つのレコードだけが残っていることがわかります。

SQL でテーブルを空にする

次に、 #Namesテーブルの内容をクリアします。この操作ではTRUNCATE TABLE #Namesコマンドを使用します。 

基本的な SQL テーブル操作

TRUNCATE TABLEコマンドを実行したら、 SELECT * FROM #Namesコマンドを使用すると、 #Namesテーブルが空になったことが表示されます。

基本的な SQL テーブル操作

テーブルのコピー

最後に、テーブルをコピーする方法を学びます。これを行うには、どのテーブルをコピーするかを特定する必要があります。たとえば、PERSON.PERSONテーブルのコピーを作成したいとします。この例では、コマンドSELECT * INTO person.person_copy FROM person.personを使用して、そのレコードとともにperson.personテーブルのコピーを作成します。

基本的な SQL テーブル操作

次に、レコードが 1 つだけ含まれるperson.personテーブルのコピーを作成します。たとえば、BusinessEntityID値が1 のレコードのみをコピーしたいとします。

基本的な SQL テーブル操作

これを行うには、FROM person.personコマンドの隣にWHEREコマンドを追加する必要があります。次に、列名BusinessEntityIDを入力し、値を1に設定します。

基本的な SQL テーブル操作

コマンドを実行すると、person.personテーブルのコピーが正常に作成されたことを示すメッセージが表示されます。テーブルの名前はPerson.Person_copyでそのレコードのBusinessEntityID1です。

次のコマンドを使用して、 person.person_copyテーブルを選択しましょう。

基本的な SQL テーブル操作

これらの手順を使用すると、同じ数の列をperson.personテーブルから作成し、person.person_copyテーブルを作成することができました。 

結論

要約すると、基本的な SQL テーブル操作をさまざまな目的に使用できます。テーブルの作成方法を学びました。テーブル内のレコードを挿入、更新、削除します。そしてテーブルのコピーを作成します。

それに加えて、コマンドをテストしたり、潜在的なエラーを見つけたり修正したりするために使用できる一時テーブルを作成する方法についても説明しました。一時テーブルで行ったすべての操作は、物理テーブルでも実行できることに注意してください。セッションを閉じると、一時テーブルは存在しなくなることに注意してください。

このトピックやその他の関連コンテンツについて詳しく知りたい場合は、以下の関連リンクのリストをご覧ください。

ではごきげんよう、

ハーフィズ


Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。