+13
-1
@@ -3,6 +3,8 @@
|
||||
本文档提供针对 xinhan 表的 SQL 创建语句与示例查询。注意:以下 SQL 仅用于创建结构;本任务仅生成 MD 文档,不执行 SQL。
|
||||
|
||||
## 数据字段与含义
|
||||
- self_number: 自编号,文本类型,用于内部检索
|
||||
- tracking_number: 快递号,文本类型,用于记录物流单号
|
||||
- recipient: 收件人,为文本类型,必填
|
||||
- content: 内容物,文本型,可包含多行描述
|
||||
- sent_date: 寄出日期,时间戳(timestamptz/ TIMESTAMP),必填
|
||||
@@ -13,6 +15,8 @@
|
||||
```sql
|
||||
CREATE TABLE xinhan (
|
||||
id SERIAL PRIMARY KEY,
|
||||
self_number TEXT,
|
||||
tracking_number TEXT,
|
||||
recipient TEXT NOT NULL,
|
||||
content TEXT,
|
||||
sent_date TIMESTAMP WITHOUT TIME ZONE NOT NULL,
|
||||
@@ -20,7 +24,9 @@ CREATE TABLE xinhan (
|
||||
arrival_date TIMESTAMP WITHOUT TIME ZONE
|
||||
);
|
||||
|
||||
-- 索引,提升按收件人、寄出日期/寄达日期的查询性能
|
||||
-- 索引,提升按自编号、快递号、收件人、寄出日期/寄达日期的查询性能
|
||||
CREATE INDEX IF NOT EXISTS idx_xinhan_self_number ON xinhan (self_number);
|
||||
CREATE INDEX IF NOT EXISTS idx_xinhan_tracking_number ON xinhan (tracking_number);
|
||||
CREATE INDEX IF NOT EXISTS idx_xinhan_recipient ON xinhan (recipient);
|
||||
CREATE INDEX IF NOT EXISTS idx_xinhan_sent_date ON xinhan (sent_date);
|
||||
CREATE INDEX IF NOT EXISTS idx_xinhan_arrival_date ON xinhan (arrival_date);
|
||||
@@ -34,6 +40,12 @@ WHERE recipient ILIKE '%张三%'
|
||||
ORDER BY sent_date DESC
|
||||
LIMIT 100;
|
||||
|
||||
-- 根据自编号查询示例
|
||||
SELECT * FROM xinhan
|
||||
WHERE self_number ILIKE '%XH-2026-001%'
|
||||
ORDER BY sent_date DESC
|
||||
LIMIT 100;
|
||||
|
||||
-- 根据日期范围查询示例
|
||||
SELECT * FROM xinhan
|
||||
WHERE sent_date BETWEEN '2024-01-01' AND '2026-12-31'
|
||||
|
||||
Reference in New Issue
Block a user