すべてのプロダクト
Search
ドキュメントセンター

Dataphin:Hive でサポートされている DDL 文

最終更新日:Feb 06, 2025

このトピックでは、Dataphin コンピュートエンジンを使用する場合に Hive でサポートされている DDL(データ定義言語)コマンドと構文の概要について説明します。

目次

CREATE TABLE

このコマンドは、新しいテーブルを作成するために使用されます。

CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name
  [(col_name data_type [column_constraint_specification] [COMMENT col_comment], ... [constraint_specification])]
  [COMMENT table_comment]
  [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
  [CLUSTERED BY (col_name, ...) [SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]
  [SKEWED BY (col_name, ...) ON ((col_value, ...), ...) [STORED AS DIRECTORIES]]
  [[ROW FORMAT row_format] [STORED AS file_format] | STORED BY 'storage.handler.class.name' [WITH SERDEPROPERTIES (...)]]
  [LOCATION hdfs_path]
  [TBLPROPERTIES (property_name=property_value, ...)]
  [AS select_statement];

CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name
  LIKE existing_table_or_view_name
  [LOCATION hdfs_path];

data_type:
  : primitive_type
  | array_type
  | map_type
  | struct_type
  | union_type

primitive_type:
  : TINYINT
  | SMALLINT
  | INT
  | BIGINT
  | BOOLEAN
  | FLOAT
  | DOUBLE
  | DOUBLE PRECISION
  | STRING
  | BINARY
  | TIMESTAMP
  | DECIMAL
  | DECIMAL(precision, scale)
  | DATE
  | VARCHAR
  | CHAR

array_type:
  : ARRAY < data_type >

map_type:
  : MAP < primitive_type, data_type >

struct_type:
  : STRUCT < col_name : data_type [COMMENT col_comment], ...>

union_type:
   : UNIONTYPE < data_type, data_type, ... >

row_format:
  : DELIMITED [FIELDS TERMINATED BY char [ESCAPED BY char]] [COLLECTION ITEMS TERMINATED BY char]
        [MAP KEYS TERMINATED BY char] [LINES TERMINATED BY char]
        [NULL DEFINED AS char]
  | SERDE serde_name [WITH SERDEPROPERTIES (property_name=property_value, ...)]

file_format:
  : SEQUENCEFILE
  | TEXTFILE
  | RCFILE
  | ORC
  | PARQUET
  | AVRO
  | JSONFILE
  | INPUTFORMAT input_format_classname OUTPUTFORMAT output_format_classname

column_constraint_specification:
  : [ PRIMARY KEY|UNIQUE|NOT NULL|DEFAULT [default_value]|CHECK [check_expression] ENABLE|DISABLE NOVALIDATE RELY/NORELY ]

default_value:
  : [ LITERAL|CURRENT_USER()|CURRENT_DATE()|CURRENT_TIMESTAMP()|NULL ]

constraint_specification:
  : [, PRIMARY KEY (col_name, ...) DISABLE NOVALIDATE RELY/NORELY ]
    [, CONSTRAINT constraint_name FOREIGN KEY (col_name, ...) REFERENCES table_name(col_name, ...) DISABLE NOVALIDATE
    [, CONSTRAINT constraint_name UNIQUE (col_name, ...) DISABLE NOVALIDATE RELY/NORELY ]
    [, CONSTRAINT constraint_name CHECK [check_expression] ENABLE|DISABLE NOVALIDATE RELY/NORELY ]

詳細については、「参照ドキュメント」をご参照ください。

DROP TABLE

このコマンドは、テーブルを削除するために使用されます。

DROP TABLE [IF EXISTS] table_name [PURGE];     -- (注: PURGE オプションは Hive 0.14.0 以降のバージョンで使用可能です)

詳細については、「参照ドキュメント」をご参照ください。

TRUNCATE TABLE

このコマンドは、テーブルからすべての行を削除します。

TRUNCATE [TABLE] table_name [PARTITION partition_spec];

partition_spec:
  : (partition_column = partition_col_value, partition_column = partition_col_value, ...)

詳細については、「参照ドキュメント」をご参照ください。

ALTER TABLE

テーブルの構造を変更します。

ALTER TABLE table_name RENAME TO new_table_name;

詳細については、「参照ドキュメント」をご参照ください。

ALTER PARTITION

パーティションの定義を変更します。

ALTER TABLE table_name ADD [IF NOT EXISTS] PARTITION partition_spec [LOCATION 'location'][, PARTITION partition_spec [LOCATION 'location'], ...];

partition_spec:
  : (partition_column = partition_col_value, partition_column = partition_col_value, ...)

詳細については、「参照ドキュメント」をご参照ください。

ALTER COLUMN

列の定義を変更します。

ALTER TABLE table_name [PARTITION partition_spec] CHANGE [COLUMN] col_old_name col_new_name column_type
  [COMMENT col_comment] [FIRST|AFTER column_name] [CASCADE|RESTRICT];

詳細については、「参照ドキュメント」をご参照ください。

CREATE VIEW

このコマンドは、新しいビューを作成するために使用されます。

CREATE VIEW [IF NOT EXISTS] [db_name.]view_name [(column_name [COMMENT column_comment], ...)]
  [COMMENT view_comment]
  [TBLPROPERTIES (property_name = property_value, ...)]
  AS SELECT ...;

詳細については、「参照ドキュメント」をご参照ください。

DROP VIEW

データベースから既存のビューを削除します。

DROP VIEW [IF EXISTS] [db_name.]view_name;

詳細については、「参照ドキュメント」をご参照ください。

ALTER VIEW PROPERTIES

ビューのプロパティを変更します。

ALTER VIEW [db_name.]view_name SET TBLPROPERTIES (property_name = property_value, ...);

詳細については、「参照ドキュメント」をご参照ください。

CREATE MATERIALIZED VIEW

マテリアライズドビューを作成するには:

CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]materialized_view_name
  [DISABLE REWRITE]
  [COMMENT materialized_view_comment]
  [PARTITIONED ON (col_name, ...)]
  [CLUSTERED BY (col_name, ...) | DISTRIBUTED BY (col_name, ...) SORTED BY (col_name, ...)]
  [
    [ROW FORMAT row_format]
    [STORED AS file_format]
      | STORED BY 'storage.handler.class.name' [WITH SERDEPROPERTIES (...)]
  ]
  [LOCATION hdfs_path]
  [TBLPROPERTIES (property_name=property_value, ...)]
AS SELECT ...;

詳細については、「参照ドキュメント」をご参照ください。

DROP MATERIALIZED VIEW

このコマンドは、マテリアライズドビューを削除するために使用されます。

DROP MATERIALIZED VIEW [db_name.]materialized_view_name;

詳細については、「参照ドキュメント」をご参照ください。

ALTER MATERIALIZED VIEW

マテリアライズドビューのプロパティを変更します。

ALTER MATERIALIZED VIEW [db_name.]materialized_view_name ENABLE|DISABLE REWRITE;

詳細については、「参照ドキュメント」をご参照ください。

CREATE INDEX

このコマンドは、インデックスを作成するために使用されます。

CREATE INDEX index_name
  ON TABLE base_table_name (col_name, ...)
  AS index_type
  [WITH DEFERRED REBUILD]
  [IDXPROPERTIES (property_name=property_value, ...)]
  [IN TABLE index_table_name]
  [
     [ ROW FORMAT ...] STORED AS ...
     | STORED BY ...
  ]
  [LOCATION hdfs_path]
  [TBLPROPERTIES (...)]
  [COMMENT "index comment"];

詳細については、「参照ドキュメント」をご参照ください。

DROP INDEX

テーブルから既存のインデックスを削除します。

DROP INDEX [IF EXISTS] index_name ON table_name;

詳細については、「参照ドキュメント」をご参照ください。

ALTER INDEX

既存のインデックスを変更します。

ALTER INDEX index_name ON table_name [PARTITION partition_spec] REBUILD;

詳細については、「参照ドキュメント」をご参照ください。

CREATE TEMPORARY MACRO

このコマンドは、一時マクロを作成するために使用されます。

CREATE TEMPORARY MACRO macro_name([col_name col_type, ...]) expression;

詳細については、「参照ドキュメント」をご参照ください。

DROP TEMPORARY MACRO

このコマンドは、一時マクロを削除するために使用されます。

DROP TEMPORARY MACRO [IF EXISTS] macro_name;

詳細については、「参照ドキュメント」をご参照ください。

CREATE TEMPORARY FUNCTION

次の構文を使用して一時関数を作成します。

CREATE TEMPORARY FUNCTION function_name AS class_name;

詳細については、「参照ドキュメント」をご参照ください。

DROP TEMPORARY FUNCTION

このコマンドは、一時関数を削除します。

DROP TEMPORARY FUNCTION [IF EXISTS] function_name;

詳細については、「参照ドキュメント」をご参照ください。

CREATE FUNCTION

このコマンドは、新しい関数を作成するために使用されます。

CREATE FUNCTION [db_name.]function_name AS class_name
  [USING JAR|FILE|ARCHIVE 'file_uri' [, JAR|FILE|ARCHIVE 'file_uri'] ];

詳細については、「参照ドキュメント」をご参照ください。

DROP FUNCTION

このコマンドは、指定された関数を削除するために使用されます。

DROP FUNCTION [IF EXISTS] function_name;

詳細については、「参照ドキュメント」をご参照ください。

RELOAD FUNCTION

このコマンドは、関数を再読み込みします。

RELOAD (FUNCTIONS|FUNCTION);

詳細については、「参照ドキュメント」をご参照ください。

SHOW TABLES

テーブルのリストを表示します。

SHOW TABLES [IN database_name] ['identifier_with_wildcards'];

詳細については、「参照ドキュメント」をご参照ください。

SHOW VIEWS

データベース内のビューのリストを表示します。

SHOW VIEWS [IN/FROM database_name] [LIKE 'pattern_with_wildcards'];

詳細な使用方法については、SHOW VIEWS のドキュメントを参照してください。

SHOW MATERIALIZED VIEWS

マテリアライズドビューのリストを表示します。

SHOW MATERIALIZED VIEWS [IN/FROM database_name] [LIKE 'pattern_with_wildcards'];

詳細については、「参照ドキュメント」をご参照ください。

SHOW PARTITIONS

このコマンドは、指定されたテーブルのパーティションを表示します。

SHOW PARTITIONS table_name;

詳細については、「参照ドキュメント」をご参照ください。

SHOW CREATE TABLE

テーブルまたはビューの作成に使用された SQL 文を表示します。

SHOW CREATE TABLE ([db_name.]table_name|view_name);

詳細については、「参照ドキュメント」をご参照ください。

SHOW INDEXES

テーブルのインデックスを表示します。

SHOW [FORMATTED] (INDEX|INDEXES) ON table_with_index [(FROM|IN) db_name];

詳細については、「参照ドキュメント」をご参照ください。

SHOW COLUMNS

テーブルの列を表示します。

SHOW COLUMNS (FROM|IN) table_name [(FROM|IN) db_name];

詳細については、「参照ドキュメント」をご参照ください。

SHOW FUNCTIONS

使用可能な関数のリストを表示します。

SHOW FUNCTIONS [LIKE "<pattern>"];

詳細については、「参照ドキュメント」をご参照ください。

SHOW LOCKS

テーブルまたはデータベースの現在のロックを表示します。


SHOW LOCKS <table_name>;
SHOW LOCKS <table_name> EXTENDED;
SHOW LOCKS <table_name> PARTITION (<partition_spec>);
SHOW LOCKS <table_name> PARTITION (<partition_spec>) EXTENDED;
SHOW LOCKS (DATABASE|SCHEMA) database_name;     -- (注: Hive 0.13.0 以降、SCHEMA は Hive 0.14.0 で追加)

詳細については、「参照ドキュメント」をご参照ください。

DESCRIBE DATABASE

このコマンドは、データベースに関する詳細を提供します。

DESCRIBE DATABASE [EXTENDED] db_name;
DESCRIBE SCHEMA [EXTENDED] db_name;     -- (注: Hive 1.1.0 以降)

詳細については、「参照ドキュメント」をご参照ください。