

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# テーブルを作成する
<a name="t_creating_table"></a>

新しいデータベースの作成後には、データを格納するためのテーブルを作成します。テーブルの作成時に列情報を指定します。

例えば、**DEMO** という名前のテーブルを作成するには、次のコマンドを実行します。

```
CREATE TABLE Demo (
  PersonID int,
  City varchar (255)
);
```

デフォルトでは、テーブルなどの新しいデータベースオブジェクトは、データウェアハウスの作成時に作成される `public` という名前のデフォルトスキーマ内に作成されます。また別のスキーマを使用しても、データベースオブジェクトを作成できます。スキーマの詳細については、*Amazon Redshift データベース開発者ガイド*の「[データベースセキュリティの管理](https://docs.aws.amazon.com/redshift/latest/dg/r_Database_objects.html)」を参照してください。

また、`schema_name.object_name` 表記を使用して `SALES` スキーマ内にテーブルを作成することもできます。

```
CREATE TABLE SALES.DEMO (
  PersonID int,
  City varchar (255)
);
```

スキーマとそのテーブルを表示および検査するには、Amazon Redshift クエリエディタ v2 を使用できます。または、システムビューを使用して、スキーマ内のテーブルのリストを表示することもできます。詳細については、「[システムテーブルとビューをクエリする](t_querying_redshift_system_tables.md)」を参照してください。

`encoding` 列、`distkey` 列、および `sortkey` 列は、Amazon Redshift が並列処理のために使用します。これらの要素を含むテーブルの設計については、「[Amazon Redshift テーブル設計のベストプラクティス](https://docs.aws.amazon.com/redshift/latest/dg/c_designing-tables-best-practices.html)」を参照してください。

## テーブルにデータ行を挿入する
<a name="t_inserting_data_into_table"></a>

テーブルの作成後は、そのテーブル内にデータ行を挿入します。

**注記**  
[INSERT](https://docs.aws.amazon.com/redshift/latest/dg/r_INSERT_30.html) コマンドは、テーブルに行を挿入します。標準的なバルク負荷の場合は、[COPY](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html) コマンドを使用します。詳細については、「[COPY コマンドを使ってデータをロードする](https://docs.aws.amazon.com/redshift/latest/dg/c_best-practices-use-copy.html)」を参照してください。

例えば、`DEMO` テーブルに値を挿入するには、以下のコマンドを実行します。

```
INSERT INTO DEMO VALUES (781, 'San Jose'), (990, 'Palo Alto');
```

特定のスキーマ内にあるテーブルにデータを挿入するには、次のコマンドを実行します。

```
INSERT INTO SALES.DEMO VALUES (781, 'San Jose'), (990, 'Palo Alto');
```

## テーブルからデータを選択する
<a name="t_selecting_data"></a>

テーブルを作成してデータを挿入した後、テーブル内にあるデータを表示するには、SELECT ステートメントを使用します。SELECT \$1 ステートメントは、テーブル内のすべてのデータについて、すべての列名と行の値を返します。SELECT を使用すると、新しく追加したデータがテーブルに正しく入力されたかどうかを、便利に確認できます。

**DEMO** テーブルに入力したデータを表示するには、次のコマンドを実行します。

```
SELECT * from DEMO;
```

結果は次のようになります。

```
 personid |   city    
----------+-----------
      781 | San Jose
      990 | Palo Alto
(2 rows)
```

クエリテーブルでの SELECT ステートメントの使用方法については、「[SELECT](https://docs.aws.amazon.com/redshift/latest/dg/r_SELECT_synopsis.html)」を参照してください。