124 lines
7.0 KiB
SQL
124 lines
7.0 KiB
SQL
|
||
CREATE TABLE element_analysis_data (
|
||
-- ========== 主键 ==========
|
||
id BIGSERIAL PRIMARY KEY,
|
||
|
||
-- ========== 样品基本信息 ==========
|
||
sample_name VARCHAR(255),
|
||
sample_grade_id VARCHAR(100),
|
||
sample_grade_alias VARCHAR(255),
|
||
operator_name VARCHAR(100),
|
||
instrument VARCHAR(100),
|
||
method_name VARCHAR(255),
|
||
sample_type VARCHAR(50),
|
||
|
||
-- ========== 测量信息 ==========
|
||
replicate_no VARCHAR(100),
|
||
measure_datetime VARCHAR(100),
|
||
measure_duration VARCHAR(100),
|
||
check_type VARCHAR(50),
|
||
check_status VARCHAR(50),
|
||
grade_name VARCHAR(100),
|
||
base_element VARCHAR(10),
|
||
rsd_check VARCHAR(100),
|
||
|
||
-- ========== 元素信息 ==========
|
||
element_name VARCHAR(10) NOT NULL,
|
||
element_type VARCHAR(50),
|
||
|
||
-- ========== 测量结果(浓度值) ==========
|
||
concentration_value VARCHAR(100),
|
||
concentration_unit VARCHAR(20),
|
||
std_dev_value VARCHAR(100),
|
||
|
||
-- ========== 不确定度信息 ==========
|
||
uncertainty_abs VARCHAR(100),
|
||
uncertainty_rel VARCHAR(100),
|
||
|
||
-- ========== 验收限值 ==========
|
||
lower_acceptance_limit VARCHAR(100),
|
||
upper_acceptance_limit VARCHAR(100),
|
||
|
||
-- ========== 状态信息 ==========
|
||
result_status VARCHAR(50),
|
||
calibration_status VARCHAR(50),
|
||
acceptance_status VARCHAR(50),
|
||
is_deleted VARCHAR(100) DEFAULT 'false',
|
||
|
||
-- ========== 计算字段(便于查询) ==========
|
||
is_within_limits VARCHAR(100),
|
||
deviation_from_center VARCHAR(100),
|
||
|
||
-- ========== XML元数据 ==========
|
||
xml_version VARCHAR(20),
|
||
xml_creation_datetime VARCHAR(100),
|
||
|
||
-- ========== 系统字段 ==========
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||
data_source VARCHAR(255)
|
||
);
|
||
|
||
-- ========== 索引设计 ==========
|
||
CREATE INDEX idx_element_name ON element_analysis_data(element_name);
|
||
CREATE INDEX idx_sample_grade ON element_analysis_data(sample_grade_id);
|
||
CREATE INDEX idx_measure_datetime ON element_analysis_data(measure_datetime);
|
||
CREATE INDEX idx_calibration_status ON element_analysis_data(calibration_status);
|
||
CREATE INDEX idx_acceptance_status ON element_analysis_data(acceptance_status);
|
||
CREATE INDEX idx_operator ON element_analysis_data(operator_name);
|
||
CREATE INDEX idx_instrument ON element_analysis_data(instrument);
|
||
CREATE INDEX idx_composite_element_sample ON element_analysis_data(element_name, sample_grade_id, measure_datetime);
|
||
|
||
|
||
-- ============================================
|
||
-- 表和字段注释(使用单独的COMMENT语句)
|
||
-- ============================================
|
||
|
||
COMMENT ON TABLE element_analysis_data IS '元素分析数据扁平化表 - 存储所有元素检测结果,每行代表一个元素的一次测量';
|
||
|
||
COMMENT ON COLUMN element_analysis_data.id IS '主键ID,自增';
|
||
COMMENT ON COLUMN element_analysis_data.sample_name IS '样品名称';
|
||
COMMENT ON COLUMN element_analysis_data.sample_grade_id IS '样品材料等级标识,如SS-321';
|
||
COMMENT ON COLUMN element_analysis_data.sample_grade_alias IS '样品材料等级别名,如SA-213 Grade TP 321';
|
||
COMMENT ON COLUMN element_analysis_data.operator_name IS '执行测量的操作员姓名';
|
||
COMMENT ON COLUMN element_analysis_data.instrument IS '使用的检测仪器编号';
|
||
COMMENT ON COLUMN element_analysis_data.method_name IS '使用的检测方法名称';
|
||
COMMENT ON COLUMN element_analysis_data.sample_type IS '样品类型:Calibration(校准)、Measurement(测量)等';
|
||
COMMENT ON COLUMN element_analysis_data.replicate_no IS '重复测量的序号,从0开始';
|
||
COMMENT ON COLUMN element_analysis_data.measure_datetime IS '执行测量的日期和时间';
|
||
COMMENT ON COLUMN element_analysis_data.measure_duration IS '测量持续时间,单位:秒';
|
||
COMMENT ON COLUMN element_analysis_data.check_type IS '检查类型,如GradeAcceptance(等级验收)';
|
||
COMMENT ON COLUMN element_analysis_data.check_status IS '检查状态,如Ok(通过)';
|
||
COMMENT ON COLUMN element_analysis_data.grade_name IS '检测使用的材料等级名称';
|
||
COMMENT ON COLUMN element_analysis_data.base_element IS '基础元素符号,用于计算其他元素的相对含量';
|
||
COMMENT ON COLUMN element_analysis_data.rsd_check IS '是否进行相对标准偏差(RSD)检查';
|
||
COMMENT ON COLUMN element_analysis_data.element_name IS '化学元素符号,如Fe(铁)、Cr(铬)、Ni(镍)、Mn(锰)等';
|
||
COMMENT ON COLUMN element_analysis_data.element_type IS '元素类型,通常为Element';
|
||
COMMENT ON COLUMN element_analysis_data.concentration_value IS '元素浓度的测量值';
|
||
COMMENT ON COLUMN element_analysis_data.concentration_unit IS '浓度单位,通常为%(百分比)';
|
||
COMMENT ON COLUMN element_analysis_data.std_dev_value IS '标准偏差值,表示测量的离散程度';
|
||
COMMENT ON COLUMN element_analysis_data.uncertainty_abs IS '绝对不确定度,表示测量的绝对误差范围';
|
||
COMMENT ON COLUMN element_analysis_data.uncertainty_rel IS '相对不确定度(百分比),表示测量的相对误差';
|
||
COMMENT ON COLUMN element_analysis_data.lower_acceptance_limit IS '验收判定的下限值';
|
||
COMMENT ON COLUMN element_analysis_data.upper_acceptance_limit IS '验收判定的上限值';
|
||
COMMENT ON COLUMN element_analysis_data.result_status IS '结果状态,如OK(正常)';
|
||
COMMENT ON COLUMN element_analysis_data.calibration_status IS '校准状态:InRange(在范围内)、UnderRange(低于范围)、OverRange(超出范围)';
|
||
COMMENT ON COLUMN element_analysis_data.acceptance_status IS '验收状态:InRange(合格)、OverRange(超标)、NotUsed(不参与验收)';
|
||
COMMENT ON COLUMN element_analysis_data.is_deleted IS '该测量结果是否已被标记为删除';
|
||
COMMENT ON COLUMN element_analysis_data.is_within_limits IS '测量值是否在验收范围内(自动计算)';
|
||
COMMENT ON COLUMN element_analysis_data.deviation_from_center IS '测量值偏离验收范围中心值的程度';
|
||
COMMENT ON COLUMN element_analysis_data.xml_version IS 'XML文件版本号';
|
||
COMMENT ON COLUMN element_analysis_data.xml_creation_datetime IS 'XML文件创建时间';
|
||
COMMENT ON COLUMN element_analysis_data.created_at IS '数据库记录创建时间';
|
||
COMMENT ON COLUMN element_analysis_data.updated_at IS '数据库记录最后更新时间';
|
||
COMMENT ON COLUMN element_analysis_data.data_source IS '数据来源的XML文件名';
|
||
|
||
COMMENT ON INDEX idx_element_name IS '元素名称索引,用于按元素查询';
|
||
COMMENT ON INDEX idx_sample_grade IS '样品等级索引,用于按材料等级查询';
|
||
COMMENT ON INDEX idx_measure_datetime IS '测量时间索引,用于时间范围查询';
|
||
COMMENT ON INDEX idx_calibration_status IS '校准状态索引,用于筛选校准状态';
|
||
COMMENT ON INDEX idx_acceptance_status IS '验收状态索引,用于筛选合格/不合格数据';
|
||
COMMENT ON INDEX idx_operator IS '操作员索引,用于按操作员查询';
|
||
COMMENT ON INDEX idx_instrument IS '仪器索引,用于按仪器查询';
|
||
COMMENT ON INDEX idx_composite_element_sample IS '复合索引,用于元素-样品-时间的组合查询';
|