数据库doris常用语句
时间: 2025-06-18 11:10:52 浏览: 13
### Doris数据库常用SQL语句示例
以下是Doris数据库的一些常见SQL语句及其应用场景:
#### 1. 查询表结构
可以通过`information_schema.COLUMNS`来获取指定表的列信息,这有助于了解表的设计和字段定义。
```sql
SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE, COLUMN_DEFAULT
FROM information_schema.COLUMNS
WHERE table_schema = 'your_database_name' AND table_name = 'your_table_name';
```
此查询可以列出特定表的所有列名、数据类型、最大长度、是否可为空以及默认值[^3]。
#### 2. 导入本地文件数据
当需要将外部文件中的数据加载到Doris表时,可以使用`_stream_load`接口。以下是一个具体的例子:
```bash
curl --location-trusted -u root -H "label:unique_label" -T /path/to/local/file.csv http://<doris_be_host>:<http_port>/api/<database_name>/<table_name>/_stream_load
```
其中,`label`参数用于唯一标识此次导入任务,防止重复提交相同的文件[^4]。
#### 3. 删除分区数据
如果只需要清空某个表的部分分区而不影响其他数据,则可以利用`TRUNCATE TABLE ... PARTITION()`命令实现这一目标。
```sql
TRUNCATE TABLE your_table_name PARTITION(partition_name);
-- 或者批量清理多个分区
TRUNCATE TABLE your_table_name PARTITION(p20230101), PARTITION(p20230102);
```
注意替换实际使用的表名与分区名称[^5]。
#### 4. 创建外表连接外部存储系统
为了访问存放在S3或其他分布式文件系统的数据而无需先迁移至内部存储,可通过创建外表的方式快速建立关联关系。
```sql
CREATE EXTERNAL TABLE external_table (
id BIGINT,
name STRING,
age INT
) ENGINE=ODBC
PROPERTIES(
"odbc.driver"="com.amazon.redshift.jdbc.Driver",
"odbc.url"="jdbc:redshift://endpoint:port/database"
);
```
#### 5. 执行复杂分析型查询
得益于其优秀的MPP架构设计,Doris非常适合用来运行各种复杂的聚合计算或者窗口函数操作。
```sql
WITH daily_sales AS (
SELECT sale_date, SUM(amount) as total_amount
FROM sales_records
GROUP BY sale_date
),
ranked_days AS (
SELECT *, RANK() OVER (ORDER BY total_amount DESC) rank_num
FROM daily_sales
)
SELECT *
FROM ranked_days
WHERE rank_num <= 10;
```
以上脚本展示了如何找出销售额最高的十天记录[^1]。
---
阅读全文
相关推荐


















