You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
2.2 KiB

CREATE DATABASE IF NOT EXISTS example_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE example_db;
CREATE TABLE IF NOT EXISTS market_data (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
variety VARCHAR(50) NOT NULL COMMENT '商品品种',
trade_date DATE NOT NULL COMMENT '交易日期',
open_price DECIMAL(18,4) COMMENT '开盘价',
close_price DECIMAL(18,4) NOT NULL COMMENT '收盘价',
high_price DECIMAL(18,4) COMMENT '最高价',
low_price DECIMAL(18,4) COMMENT '最低价',
volume DECIMAL(20,4) COMMENT '成交量',
change_rate DECIMAL(10,4) COMMENT '涨跌幅(%)',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
source VARCHAR(50) COMMENT '数据来源',
UNIQUE KEY uk_date_variety (trade_date, variety)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='行情数据表';
CREATE TABLE IF NOT EXISTS index_data (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
index_name VARCHAR(100) NOT NULL COMMENT '指数名称',
date DATE NOT NULL COMMENT '日期',
index_value DECIMAL(18,4) NOT NULL COMMENT '指数值',
change_rate DECIMAL(10,4) COMMENT '涨跌幅(%)',
stock_name VARCHAR(100) COMMENT '概念股名称',
stock_price DECIMAL(18,4) COMMENT '股价',
turnover_rate DECIMAL(10,4) COMMENT '换手率(%)',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
source VARCHAR(50) COMMENT '数据来源',
UNIQUE KEY uk_date_index (date, index_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='指数数据表';
CREATE TABLE IF NOT EXISTS news_data (
id BIGINT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(500) NOT NULL COMMENT '新闻标题',
content TEXT COMMENT '新闻内容',
publish_time DATETIME NOT NULL COMMENT '发布时间',
related_commodity VARCHAR(50) COMMENT '关联商品',
sentiment VARCHAR(10) NOT NULL COMMENT '舆情倾向(利好/利空/中性)',
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
source VARCHAR(50) COMMENT '数据来源',
UNIQUE KEY uk_title_time (title, publish_time)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='舆情数据表';