{"id": 198,"upid": 4,"game_name": "三角洲行动", "level1": "烽火地带","level2": "步枪","cover": "https://mpfile.shifoukeji.com/images/gun/14.png","name": "PTR-32","codes": "性价比 6G27RGG02CVGNGOLBMSRO$$$满改 6G27RHS02CVGNGOLBMSRO","codeList": ["性价比 6G27RGG02CVGNGOLBMSRO","满改 6G27RHS02CVGNGOLBMSRO"],"channelId": 1,"status": 1,"total_amount": 1000,"title": "标题","des": "枪械说明","game_price": 1000,"keyword": "搜索的关键词","sort_order": 1,
"shop_num":1000,
"original_price": 1200,"sold_amount": 150,"tags": ["热门", "新品"],"images": ["https://example.com/image1.jpg","https://example.com/image2.jpg"],"view_count": 5000,"rating": 4.8,"start_time": "2025-05-01T00:00:00.000Z","is_authentic": true,"platform": ["PC", "Mobile"],"createTime": "2025-05-16T15:07:35.000Z","updateTime": null
}
- MySql创建表语句:

CREATE TABLE `virtual_goods` (`id` INT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '商品唯一ID,自增主键',`upid` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '上级分类ID',`game_name` VARCHAR(50) NOT NULL COMMENT '所属游戏名称,如"三角洲行动"',`level1` VARCHAR(30) NOT NULL COMMENT '一级分类,如"烽火地带"',`level2` VARCHAR(30) NOT NULL COMMENT '二级分类,如"步枪"',`cover` VARCHAR(255) NOT NULL COMMENT '封面图URL',`name` VARCHAR(100) NOT NULL COMMENT '商品名称,如"PTR-32"',`codes` TEXT COMMENT '兑换码组合,用$$$分隔不同类型',`codeList` JSON COMMENT '结构化兑换码列表,存储为JSON数组',`channelId` TINYINT UNSIGNED NOT NULL DEFAULT 1 COMMENT '渠道ID',`status` TINYINT(1) NOT NULL DEFAULT 1 COMMENT '状态:1-上架 0-下架',`total_amount` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '总库存量',`title` VARCHAR(150) NOT NULL COMMENT '商品标题(SEO优化用)',`description` TEXT COMMENT '详细描述(原des字段)',`game_price` DECIMAL(12,2) UNSIGNED NOT NULL COMMENT '游戏内货币价格',`original_price` DECIMAL(12,2) UNSIGNED COMMENT '原价(用于折扣显示)',`keyword` VARCHAR(255) COMMENT '搜索关键词,逗号分隔',`sort_order` INT NOT NULL DEFAULT 0 COMMENT '排序权重',`shop_num` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '店铺库存',`sold_amount` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '已售数量',`tags` JSON COMMENT '商品标签,存储为JSON数组',`images` JSON NOT NULL COMMENT '商品详情图URL数组',`view_count` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '浏览次数',`rating` DECIMAL(3,1) UNSIGNED DEFAULT 0 COMMENT '用户评分(0-5分)',`start_time` DATETIME COMMENT '上架开始时间',`is_authentic` TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否正品:1-是 0-否',`platform` JSON NOT NULL COMMENT '支持平台,如["PC","Mobile"]',`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`update_time` DATETIME ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',PRIMARY KEY (`id`),KEY `idx_upid` (`upid`),KEY `idx_game_name` (`game_name`),KEY `idx_status` (`status`),KEY `idx_sort` (`sort_order`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='虚拟商品数据表';
- 数据类型优化:
使用JSON类型存储codeList、tags等结构化数据,便于查询和更新
价格字段使用DECIMAL(12,2)确保精确计算
时间字段统一采用DATETIME并设置自动更新 - 字段描述规范:
每个字段添加COMMENT说明用途和格式
将原des字段重命名为更规范的description
明确枚举值的含义(如status字段) - 索引设计:
主键id自增
为查询频繁字段(upid、game_name等)添加二级索引
排序字段sort_order单独建索引