테이블 SQL 문법

테이블 객체는 DDL 작업 로드에 대해 나열된 SQL 문법을 지원합니다.

Oracle AI Data Platform Workbench는 모든 표준 Spark SQL 데이터 유형을 지원합니다. 자세한 내용은 Apache Spark Documentation - Supported Data Types을 참조하십시오.

연산 어법
테이블 생성
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] <catalog_name>.<schema-name>.<table-name>
[ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ]
USING [HIVE|DELTA, CSV, TXT, ORC, JDBC, PARQUET, etc.]
[ options ( <key1>=<val1>[, ...]) ]
[ PARTITIONED BY (<par-column-name>[, ...]) ]
[ CLUSTERED BY ( <clus-column-name>[, ...])
    [ SORTED BY ( <sort-column-name> [ asc | desc ][, ...]) ]
    INTO <num_buckets> buckets]
[ LOCATION '<path>']
[TBLPROPERTIES ( DESCRIPTION = 'some-description', '<property-name>'='<property-value>'[, ...]) ]

응답:

<<SQL Command>> was successfully executed

오류:

Error: <<SQL Command>> failed due to <<reason>>
관리 테이블 생성
관리 테이블 생성
CREATE TABLE <catalog>.<schema>.<table-name> [ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ] USING <format>;

응답:

<<SQL Command>> was successfully executed
오류:
Error: <<SQL Command>> failed due to <<reason>>
데이터로 관리 테이블 생성
create datatable <<catalog_name>>.<<schema_name>>.<<table_name>> [ ( <column1-name><column1-type> [comment <column1-comment>], ... ) ] tblproperties ('lakehouse_storage_format'='PARQUET') using parquet with select ( <column1-name>], ... ) from parquet.'oci://bucket@namespace/folder/'

응답:

<<SQL Command>> was successfully executed
오류:
Error: <<SQL Command>> failed due to <<reason>>
균일한 지원이 있는 테이블 생성
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] <catalog_name>.<schema-name>.<table-name>
[ ( <column1-name> <column1-type> [comment <column1-comment>], ... ) ]
[TBLPROPERTIES ('delta.universalFormat.enabledFormats' = 'iceberg') ]
테이블 변경
ALTER TABLE table_old_name RENAME TO table_new_name
ALTER TABLE table_name ADD COLUMNS ( col_spec [ , ... ])
ALTER TABLE table_name DROP { COLUMN | COLUMNS } [ ( ] col_name [ , ... ] [ ) ]
ALTER TABLE table_name RENAME COLUMN col_name TO col_name
ALTER TABLE table_name ADD [IF NOT EXISTS] ( partition_spec [partition_spec ... ] )
ALTER TABLE table_name DROP [ IF EXISTS ] partition_spec [PURGE]
ALTER TABLE table_name set tblproperties (description ='some-description')
테이블 삭제
DROP TABLE [ IF EXISTS ] table_name [ PURGE ]

응답:

<<SQL Command>> was successfully executed

오류:

Error: <<SQL Command>> failed due to <<reason>>
스키마의 테이블 나열
SHOW TABLES in catalog_name.schema_name [ LIKE <regex_pattern> ]

regex_pattern: 명령문의 결과를 필터링하는 데 사용되는 정규 표현식 패턴입니다.

응답:
<<namesake>>,tableName,isTemporary

오류:

<<SQL Command>> failed due to <<reason>>
테이블 설명
DESCRIBE TABLE [ FORMAT ] catalog_name.schema_name.table_name [ PARTITION (<partition_col_name> = <partition_col_val>, ...) ] [ catalog_name.schema_name.table_name.column_name ]

형식: EXTENDED이 형식으로 지정된 경우 추가 메타데이터 정보(예: 상위 데이터베이스, 소유자 및 액세스 시간)가 반환됩니다.

DESCRIBE TABLE catalog.schema.table 응답:

col_name,data_type,comment
DESCRIBE TABLE catalog.schema.table column 응답:
info_name,info_value