CREATE TABLE "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO" ( "ID" VARCHAR(50) NOT NULL, "BRAND_ID" VARCHAR(50), "BRAND_NAME" VARCHAR(50) NOT NULL, "BRAND_TYPE" VARCHAR(50) NOT NULL, "BRAND_COMPANY" VARCHAR(50) NOT NULL, "EXAMINE_DISTRICT" VARCHAR(50) NOT NULL, "EXAMINE_STATUS" VARCHAR(50) NOT NULL, "CREATE_TIME" TIMESTAMP(6) DEFAULT CURRENT_TIMESTAMP NOT NULL, "UPDATE_TIME" TIMESTAMP(6), "CREATE_BY" VARCHAR(50), "UPDATE_BY" VARCHAR(50), "DEL_FLAG" VARCHAR(50) DEFAULT 0, "STATUS" VARCHAR(50) DEFAULT 0, "ASSIGNMENT_STATUS" VARCHAR(50) DEFAULT 1, "ASSIGNMENT_LIST" VARCHAR(500), "LISTING_STATUS" VARCHAR(50) DEFAULT 0, NOT CLUSTER PRIMARY KEY("ID")) STORAGE(ON "MAIN", CLUSTERBTR) ; COMMENT ON TABLE "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO" IS '劳务品牌审核信息主表'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."ASSIGNMENT_LIST" IS '专家分配列表'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."ASSIGNMENT_STATUS" IS '专家分配状态,0已分配1未分配'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."BRAND_COMPANY" IS '品牌提交方(公司名称)'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."BRAND_ID" IS '品牌编号'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."BRAND_NAME" IS '品牌名称'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."BRAND_TYPE" IS '品牌类型'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."CREATE_BY" IS '创建人'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."CREATE_TIME" IS '创建时间'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."DEL_FLAG" IS '是否删除,0未删除,1已删除'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."EXAMINE_DISTRICT" IS '审批区县'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."EXAMINE_STATUS" IS '当前审核状态'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."ID" IS '审批编号'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."LISTING_STATUS" IS '0上架,1下架'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."STATUS" IS '状态,0启用,1为禁用'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."UPDATE_BY" IS '更新人'; COMMENT ON COLUMN "LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO"."UPDATE_TIME" IS '更新时间'; 这张达梦表,我需要做一个统计分析查询SQL,如下:总品牌数量(EXAMINE_STATUS=3)、申请数量(表总数)、驳回数量(EXAMINE_STATUS=4)、审核通过率(驳回数量/总数量)
时间: 2025-05-31 08:44:31 浏览: 18
根据你的需求,我们需要从表 `LABOR_BRAND.EXAMINEINFO` 中统计以下信息:
1. **总品牌数量**:`EXAMINE_STATUS = 3` 的记录数。
2. **申请数量**:表中的总记录数。
3. **驳回数量**:`EXAMINE_STATUS = 4` 的记录数。
4. **审核通过率**:计算公式为 `(总品牌数量 - 驳回数量) / 总品牌数量`。
以下是实现该统计分析的 SQL 查询代码:
```sql
SELECT
-- 统计总品牌数量 (EXAMINE_STATUS = 3)
COUNT(CASE WHEN EXAMINE_STATUS = '3' THEN 1 END) AS total_brands,
-- 统计申请数量 (表中总记录数)
COUNT(*) AS application_count,
-- 统计驳回数量 (EXAMINE_STATUS = 4)
COUNT(CASE WHEN EXAMINE_STATUS = '4' THEN 1 END) AS rejected_count,
-- 计算审核通过率
CASE
WHEN COUNT(CASE WHEN EXAMINE_STATUS = '3' THEN 1 END) = 0 THEN 0
ELSE
(COUNT(CASE WHEN EXAMINE_STATUS = '3' THEN 1 END) - COUNT(CASE WHEN EXAMINE_STATUS = '4' THEN 1 END)) * 1.0 / COUNT(CASE WHEN EXAMINE_STATUS = '3' THEN 1 END)
END AS approval_rate
FROM
"LABOR_BRAND"."LABOR_BRAND_EXAMINEINFO";
```
### 代码解释
1. **`COUNT(CASE WHEN EXAMINE_STATUS = '3' THEN 1 END)`**:
- 统计 `EXAMINE_STATUS = 3` 的记录数,表示总品牌数量。
2. **`COUNT(*)`**:
- 统计表中的所有记录数,表示申请数量。
3. **`COUNT(CASE WHEN EXAMINE_STATUS = '4' THEN 1 END)`**:
- 统计 `EXAMINE_STATUS = 4` 的记录数,表示驳回数量。
4. **审核通过率计算**:
- 使用 `CASE` 语句避免除以零的情况。
- 如果总品牌数量为 0,则直接返回 0。
- 否则,计算 `(总品牌数量 - 驳回数量) / 总品牌数量`,并乘以 `1.0` 确保结果为浮点数。
### 注意事项
- 如果表中有大量数据,建议为 `EXAMINE_STATUS` 字段创建索引以优化查询性能。
- 如果需要按某个字段(如 `EXAMINE_DISTRICT`)分组统计,可以在查询中添加 `GROUP BY` 子句。
---
###
阅读全文
相关推荐


















