create external table if not exists news( keyword int, html int, name string, text string, price string )row format delimited fields terminated by ‘;’ stored as textfile;改正
时间: 2024-03-12 14:49:18 浏览: 54
mssql和sqlite中关于if not exists 的写法
这段 SQL 语句有如下错误:
1. 在创建 `external table` 时,应使用 `LOCATION` 子句来指定外部表的存储位置;
2. 在列定义中,应该使用正确的数据类型,而非将所有列都定义为 `int` 或 `string`;
3. 在 `fields terminated by` 子句中,应使用单引号(')而非中文引号(‘’);
4. 在 `stored as` 子句中,应使用正确的文件格式,如 `stored as textfile` 代表文本文件格式。
修改后的 SQL 语句如下:
```sql
CREATE EXTERNAL TABLE IF NOT EXISTS `news` (
`keyword` INT,
`html` INT,
`name` STRING,
`text` STRING,
`price` STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ';'
LOCATION '/path/to/external/table'
STORED AS TEXTFILE;
```
这样修改后的代码可以正确创建外部表,并指定了正确的列类型、字段分隔符、存储位置和文件格式。
阅读全文