-- ------------------------------
-- 1. 专辑表（已包含已添加的管理字段）
-- ------------------------------
CREATE TABLE `album` (
                         `id` INT AUTO_INCREMENT PRIMARY KEY,
                         `album_name` VARCHAR(100) NOT NULL COMMENT '专辑名称',
                         `artist_id` INT NOT NULL COMMENT '关联artist服务的artist.id',
                         `artist_name` VARCHAR(16) COMMENT '关联artist服务的artist.name',
                         `cover_url` VARCHAR(255) COMMENT '专辑封面URL',
                         `release_time` DATE COMMENT '发行时间',
                         `description` TEXT COMMENT '专辑描述（介绍专辑主题、曲目等）',
                         `album_type` TINYINT DEFAULT 1 COMMENT '专辑类型：1-数字专辑，2-实体专辑，3-EP',
                         `price` DECIMAL(10,2) COMMENT '专辑价格（实体专辑或付费数字专辑使用）',
                         `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                         `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
-- 已添加的管理字段
                         `status` TINYINT DEFAULT 0 COMMENT '专辑状态：0--审核中，1-审核失败，2-发布中，3-已上架，4-已下架',
                         `audit_reason` VARCHAR(500) COMMENT '审核失败原因',
                         `audit_time` DATETIME COMMENT '审核时间',
                         `publish_time` DATETIME COMMENT '发布时间',
                         `shelf_time` DATETIME COMMENT '上架时间',
                         `off_shelf_time` DATETIME COMMENT '下架时间',
                         `delete_flag` TINYINT DEFAULT 0 COMMENT '删除标志：0-未删除，1-已删除',
                         `delete_time` DATETIME COMMENT '删除时间',
                         INDEX `idx_album_name` (`album_name`),
                         INDEX `idx_artist_id` (`artist_id`),
                         INDEX `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='专辑表';

-- ------------------------------
-- 2. 歌曲表（已包含已添加的管理字段）
-- ------------------------------
CREATE TABLE `song` (
                        `id` INT AUTO_INCREMENT PRIMARY KEY,
                        `song_name` VARCHAR(100) NOT NULL COMMENT '歌曲名称',
                        `artist_id` INT NOT NULL COMMENT '关联artist服务的artist.id',
                        `album_id` INT COMMENT '关联本服务的album.id（可为空，单曲不关联专辑）',
                        `album_name` VARCHAR(100) NOT NULL COMMENT '专辑名称',
                        `duration` INT COMMENT '时长（秒，如300秒=5分钟）',
                        `file_url` VARCHAR(255) NOT NULL COMMENT '歌曲音频文件URL',
                        `cover_url` VARCHAR(255) COMMENT '歌曲封面URL（优先使用专辑封面，无专辑时用此封面）',
                        `release_time` DATE COMMENT '发行时间',
                        `lyrics` TEXT COMMENT '歌词（冗余存储，核心歌词）',
                        `play_count` BIGINT DEFAULT 0 COMMENT '播放量',
                        `is_paid` TINYINT DEFAULT 0 COMMENT '是否付费：0-免费，1-付费',
                        `price` DECIMAL(10,2) DEFAULT 0.00 COMMENT '单曲价格',
                        `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                        `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
-- 已添加的管理字段
                        `status` TINYINT DEFAULT 0 COMMENT '歌曲状态：0-草稿，1-审核中，2-审核失败，3-发布中，4-已上架，5-已下架',
                        `audit_reason` VARCHAR(500) COMMENT '审核失败原因',
                        `audit_time` DATETIME COMMENT '审核时间',
                        `publish_time` DATETIME COMMENT '发布时间',
                        `shelf_time` DATETIME COMMENT '上架时间',
                        `off_shelf_time` DATETIME COMMENT '下架时间',
                        `delete_flag` TINYINT DEFAULT 0 COMMENT '删除标志：0-未删除，1-已删除',
                        `delete_time` DATETIME COMMENT '删除时间',
                        `song_type` VARCHAR(50) COMMENT '歌曲类型',
                        `version` VARCHAR(50) COMMENT '版本',
                        `work_type` VARCHAR(50) COMMENT '作品类型',
                        `genre` VARCHAR(255) COMMENT '音乐风格',
                        `language` VARCHAR(20) COMMENT '语言',
                        `lyricist` VARCHAR(100) COMMENT '作词人',
                        `composer` VARCHAR(100) COMMENT '作曲人',
                        `arranger` VARCHAR(100) COMMENT '编曲人',
                        `singer_name` VARCHAR(100) COMMENT '演唱者姓名',
                        FOREIGN KEY (`album_id`) REFERENCES `album` (`id`) ON DELETE SET NULL,
                        INDEX `idx_song_name` (`song_name`),
                        INDEX `idx_play_count` (`play_count`),
                        INDEX `idx_artist_id` (`artist_id`),
                        INDEX `idx_status` (`status`),
                        INDEX `idx_delete_flag` (`delete_flag`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='歌曲表';
-- ------------------------------
-- 3. 歌单表（关联auth服务的user.id，逻辑关联）
-- ------------------------------
CREATE TABLE `playlist` (
                            `id` INT AUTO_INCREMENT PRIMARY KEY,
                            `user_id` INT NOT NULL COMMENT '关联auth服务的user.id',
                            `playlist_name` VARCHAR(100) NOT NULL COMMENT '歌单名称',
                            `cover_url` VARCHAR(255) COMMENT '歌单封面URL',
                            `description` TEXT COMMENT '歌单描述',
                            `tag` VARCHAR(255) COMMENT '歌单标签（多个用逗号分隔）',
                            `status` Boolean  DEFAULT true COMMENT '0-公开，1-私密',
                            `song_count` INT DEFAULT 0 COMMENT '歌单歌曲数量',
                            `play_count` BIGINT DEFAULT 0 COMMENT '歌单播放量',
                            `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                            `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                            INDEX `idx_playlist_name` (`playlist_name`),
                            INDEX `idx_user_id` (`user_id`) -- 逻辑关联索引
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='歌单表';

-- ------------------------------
-- 4. 歌单-歌曲关联表（关联本服务的playlist和song表）
-- ------------------------------
CREATE TABLE `playlist_song` (
                                 `id` INT AUTO_INCREMENT PRIMARY KEY,
                                 `playlist_id` INT NOT NULL COMMENT '关联本服务的playlist.id',
                                 `song_id` INT NOT NULL COMMENT '关联本服务的song.id',
                                 `order_num` INT NOT NULL COMMENT '歌曲在歌单中的排序序号',
                                 `add_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '歌曲添加时间',
                                 FOREIGN KEY (`playlist_id`) REFERENCES `playlist` (`id`) ON DELETE CASCADE,
                                 FOREIGN KEY (`song_id`) REFERENCES `song` (`id`) ON DELETE CASCADE,
                                 UNIQUE KEY `uk_playlist_song` (`playlist_id`, `song_id`),
                                 INDEX `idx_order_num` (`order_num`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='歌单-歌曲关联表';

-- ------------------------------
-- 10. 歌词表（关联本服务的song.id、auth服务的user.id）
-- ------------------------------
CREATE TABLE `lyric` (
                         `id` INT AUTO_INCREMENT PRIMARY KEY,
                         `lyric_name` VARCHAR(32) NOT NULL COMMENT '歌词名',
                         `song_id` INT NOT NULL COMMENT '关联本服务的song.id',
                         `lyrics` TEXT NOT NULL COMMENT 'LRC格式歌词文本',
                         `language` VARCHAR(20) DEFAULT 'zh' COMMENT '歌词语言（zh-中文，en-英文等）',
                         `version` VARCHAR(50) COMMENT '歌词版本（如艺人原版、用户翻译版）',
                         `upload_user_id` INT NOT NULL COMMENT '上传用户ID，关联auth服务的user.id',
                         `status` TINYINT DEFAULT 0 COMMENT '状态：0-待审核，1-已通过，2-已驳回',
                         `lyric_reason` VARCHAR(500) COMMENT '审核失败原因',
                         `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP,
                         FOREIGN KEY (`song_id`) REFERENCES `song` (`id`) ON DELETE CASCADE,
                         INDEX `idx_song_id` (`song_id`),
                         INDEX `idx_upload_user_id` (`upload_user_id`) -- 逻辑关联索引
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='歌词表（多版本支持）';


-- ------------------------------
-- 5. 每日推荐表（关联auth服务的user.id、本服务的song.id）
-- ------------------------------
CREATE TABLE `daily_recommend` (
                                   `id` INT AUTO_INCREMENT PRIMARY KEY,
                                   `user_id` INT NOT NULL COMMENT '关联auth服务的user.id',
                                   `song_id` INT NOT NULL COMMENT '关联本服务的song.id',
                                   `recommend_date` DATE NOT NULL COMMENT '推荐日期',
                                   `reason` VARCHAR(255) COMMENT '推荐理由',
                                   `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                   UNIQUE KEY `uk_user_song_date` (`user_id`, `song_id`, `recommend_date`),
                                   INDEX `idx_recommend_date` (`recommend_date`),
                                   INDEX `idx_user_id` (`user_id`), -- 逻辑关联索引
                                   INDEX `idx_song_id` (`song_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='每日推荐表';

-- ------------------------------
-- 6. 我喜欢的音乐表（关联auth服务的user.id、本服务的song.id）
-- ------------------------------
CREATE TABLE `user_favorite_song` (
                                      `id` INT AUTO_INCREMENT PRIMARY KEY,
                                      `user_id` INT NOT NULL COMMENT '关联auth服务的user.id',
                                      `song_id` INT NOT NULL COMMENT '关联本服务的song.id',
                                      `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '收藏时间',
                                      UNIQUE KEY `uk_user_song` (`user_id`, `song_id`),
                                      INDEX `idx_user_id` (`user_id`), -- 逻辑关联索引
                                      INDEX `idx_song_id` (`song_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='我喜欢的音乐表';



-- ------------------------------
-- 8. 我关注的用户表（关联auth服务的user.id）
-- ------------------------------
CREATE TABLE `user_follow` (
                               `id` INT AUTO_INCREMENT PRIMARY KEY,
                               `follower_id` INT NOT NULL COMMENT '关注者ID，关联auth服务的user.id',
                               `followed_id` INT NOT NULL COMMENT '被关注者ID，关联auth服务的user.id',
                               `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '关注时间',
                               UNIQUE KEY `uk_follower_followed` (`follower_id`, `followed_id`),
                               INDEX `idx_follower_id` (`follower_id`), -- 逻辑关联索引
                               INDEX `idx_followed_id` (`followed_id`) -- 逻辑关联索引
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='我关注的用户表';

-- ------------------------------
-- 9. 收藏歌单表（关联auth服务的user.id、本服务的playlist.id）
-- ------------------------------
CREATE TABLE `user_playlist_favorite` (
                                          `id` INT AUTO_INCREMENT PRIMARY KEY,
                                          `user_id` INT NOT NULL COMMENT '关联auth服务的user.id',
                                          `playlist_id` INT NOT NULL COMMENT '关联本服务的playlist.id',
                                          `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '收藏时间',
                                          FOREIGN KEY (`playlist_id`) REFERENCES `playlist` (`id`) ON DELETE CASCADE,
                                          UNIQUE KEY `uk_user_playlist` (`user_id`, `playlist_id`),
                                          INDEX `idx_user_id` (`user_id`) -- 逻辑关联索引
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='我收藏的歌单表';


-- ------------------------------
-- 11. 歌曲推广表（关联artist服务的artist.id、本服务的song.id）
-- ------------------------------
CREATE TABLE `song_promotion` (
                                  `id` INT AUTO_INCREMENT PRIMARY KEY,
                                  `song_id` INT NOT NULL COMMENT '关联本服务的song.id',
                                  `artist_id` INT NOT NULL COMMENT '关联artist服务的artist.id',
                                  `promotion_type` TINYINT NOT NULL COMMENT '推广类型：1-首页推荐，2-热门榜单，3-新歌推荐，4-个性化推荐',
                                  `start_time` DATETIME NOT NULL COMMENT '推广开始时间',
                                  `end_time` DATETIME NOT NULL COMMENT '推广结束时间',
                                  `sort` INT DEFAULT 0 COMMENT '推荐排序权重（数值越小越靠前）',
                                  `status` TINYINT DEFAULT 1 COMMENT '状态：0-未生效，1-生效中，2-已过期',
                                  `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                  `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                                  UNIQUE KEY `uk_song_type` (`song_id`, `promotion_type`),
                                  INDEX `idx_promotion_type` (`promotion_type`),
                                  INDEX `idx_status` (`status`),
                                  INDEX `idx_time_range` (`start_time`, `end_time`),
                                  INDEX `idx_artist_id` (`artist_id`) -- 逻辑关联索引
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='歌曲推广表';

-- ------------------------------
-- 12. 推广效果统计表（关联本服务的song_promotion表）
-- ------------------------------
CREATE TABLE `promotion_stat` (
                                  `id` INT AUTO_INCREMENT PRIMARY KEY,
                                  `promotion_id` INT NOT NULL COMMENT '关联本服务的song_promotion.id',
                                  `stat_date` DATE NOT NULL COMMENT '统计日期',
                                  `click_count` INT DEFAULT 0 COMMENT '点击量',
                                  `play_count` INT DEFAULT 0 COMMENT '播放量',
                                  `collect_count` INT DEFAULT 0 COMMENT '收藏量',
                                  `share_count` INT DEFAULT 0 COMMENT '分享量',
                                  `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                  FOREIGN KEY (`promotion_id`) REFERENCES `song_promotion` (`id`) ON DELETE CASCADE,
                                  UNIQUE KEY `uk_promotion_date` (`promotion_id`, `stat_date`),
                                  INDEX `idx_stat_date` (`stat_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='推广效果统计表';

-- ------------------------------
-- 13. MV表（关联artist服务的artist.id）
-- ------------------------------
CREATE TABLE `mv` (
                      `id` INT AUTO_INCREMENT PRIMARY KEY,
                      `mv_name` VARCHAR(100) NOT NULL COMMENT 'MV名称',
                      `artist_id` INT NOT NULL COMMENT '关联artist服务的artist.id',
                      `artist_name` VARCHAR(100) NOT NULL COMMENT '艺人名称',
                      `cover_url` VARCHAR(255) NOT NULL COMMENT 'MV封面URL',
                      `video_url` VARCHAR(255) NOT NULL COMMENT 'MV视频文件URL',
                      `description` TEXT COMMENT 'MV描述',
                      `tags` VARCHAR(255) COMMENT 'MV标签（多个用逗号分隔）',
                      `duration` INT COMMENT '时长（秒）',
                      `view_count` BIGINT DEFAULT 0 COMMENT '播放量',
                      `like_count` BIGINT DEFAULT 0 COMMENT '点赞数',
                      `comment_count` BIGINT DEFAULT 0 COMMENT '评论数',
                      `share_count` BIGINT DEFAULT 0 COMMENT '分享数',
                      `release_time` DATE COMMENT '发布时间',
                      `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                      `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
                      `status` TINYINT DEFAULT 0 COMMENT 'MV状态：0-审核中，1-审核失败，2-发布中，3-已上架，4-已下架',
                      `audit_reason` VARCHAR(500) COMMENT '审核失败原因',
                      `audit_time` DATETIME COMMENT '审核时间',
                      `publish_time` DATETIME COMMENT '发布时间',
                      `shelf_time` DATETIME COMMENT '上架时间',
                      `off_shelf_time` DATETIME COMMENT '下架时间',
                      `delete_flag` TINYINT DEFAULT 0 COMMENT '删除标志：0-未删除，1-已删除',
                      `delete_time` DATETIME COMMENT '删除时间',
                      INDEX `idx_mv_name` (`mv_name`),
                      INDEX `idx_artist_id` (`artist_id`),
                      INDEX `idx_status` (`status`),
                      INDEX `idx_view_count` (`view_count`),
                      INDEX `idx_delete_flag` (`delete_flag`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='MV表';



-- ------------------------------
-- 14. MV收藏表（关联auth服务的user.id、本服务的mv.id）
-- ------------------------------
CREATE TABLE `mv_favorite` (
                               `id` INT AUTO_INCREMENT PRIMARY KEY,
                               `user_id` INT NOT NULL COMMENT '用户ID，关联auth服务的user.id',
                               `mv_id` INT NOT NULL COMMENT 'MV ID，关联本服务的mv.id',
                               `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '收藏时间',
                               UNIQUE KEY `uk_user_mv` (`user_id`, `mv_id`),
                               INDEX `idx_user_id` (`user_id`), -- 逻辑关联索引
                               INDEX `idx_mv_id` (`mv_id`),
                               FOREIGN KEY (`mv_id`) REFERENCES `mv` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='MV收藏表';


-- ------------------------------
-- 15. 评论表（关联auth服务的user.id、本服务的song.id或mv.id）
-- ------------------------------
CREATE TABLE `comment` (
                           `id` INT AUTO_INCREMENT PRIMARY KEY,
                           `user_id` INT NOT NULL COMMENT '评论用户ID，关联auth服务的user.id',
                           `content_type` TINYINT NOT NULL COMMENT '内容类型：1-歌曲，2-MV',
                           `content_id` INT NOT NULL COMMENT '关联内容ID，根据content_type关联song.id或mv.id',
                           `parent_id` INT DEFAULT NULL COMMENT '父评论ID，用于回复评论，NULL表示顶级评论',
                           `content` TEXT NOT NULL COMMENT '评论内容',
                           `like_count` INT DEFAULT 0 COMMENT '点赞数',
                           `reply_count` INT DEFAULT 0 COMMENT '回复数',
                           `status` TINYINT DEFAULT 1 COMMENT '评论状态：0-已删除，1-正常，2-审核中，3-审核不通过',
                           `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                           `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    -- 普通索引（保留原逻辑，优化查询效率）
                           INDEX `idx_user_id` (`user_id`), -- 逻辑关联索引，快速查询某用户的所有评论
                           INDEX `idx_content_type` (`content_type`), -- 快速按内容类型筛选评论
                           INDEX `idx_content_id` (`content_id`), -- 快速按内容ID筛选评论
                           INDEX `idx_parent_id` (`parent_id`), -- 快速查询某评论的所有回复
                           INDEX `idx_create_time` (`create_time`), -- 快速按创建时间排序/筛选评论
    -- 复合索引（优化联合查询，比单独索引更高效）
                           INDEX `idx_content_type_id` (`content_type`, `content_id`) -- 便于按内容类型+内容ID批量查询评论
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评论表（支持歌曲和MV评论）';

# // 用户等级表
CREATE TABLE `user_level` (
                              `id` INT AUTO_INCREMENT PRIMARY KEY,
                              `user_id` INT NOT NULL COMMENT '用户ID',
                              `level` INT DEFAULT 1 COMMENT '等级',
                              `exp` INT DEFAULT 0 COMMENT '经验值',
                              `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                              UNIQUE KEY `uk_user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户等级表';

# // 用户签到表
CREATE TABLE `user_sign_in` (
                                `id` INT AUTO_INCREMENT PRIMARY KEY,
                                `user_id` INT NOT NULL COMMENT '用户ID',
                                `sign_date` DATE NOT NULL COMMENT '签到日期',
                                `experience` INT DEFAULT 0 COMMENT '获得经验',
                                `continuous_days` TINYINT DEFAULT 1 COMMENT '连续签到天数（首次签到为1，断签后重置为1）',
                                `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
                                UNIQUE KEY `uk_user_sign_date` (`user_id`, `sign_date`),
                                INDEX `idx_user_id` (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户签到记录表';

-- 通用播放记录表（支持歌曲、MV）
CREATE TABLE `play_record` (
                               `id` INT AUTO_INCREMENT PRIMARY KEY,
                               `resource_type` TINYINT NOT NULL COMMENT '资源类型：1-歌曲，2-MV',
                               `resource_id` INT NOT NULL COMMENT '资源ID，歌曲ID或MV ID',
                               `user_id` INT NOT NULL COMMENT '播放用户ID，关联user表',
                               `play_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '播放时间',
    -- 联合索引：优化按类型+资源ID/用户ID/时间的查询
                               INDEX `idx_resource_type_id` (`resource_type`, `resource_id`),
                               INDEX `idx_user_id` (`user_id`),
                               INDEX `idx_play_time` (`play_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='通用播放记录表（歌曲/MV）';


-- 最近播放统计表（支持歌曲和MV）
CREATE TABLE `recent_play_stats` (
                                     `id` INT AUTO_INCREMENT PRIMARY KEY,
                                     `user_id` INT NOT NULL COMMENT '播放用户ID，关联user表',
                                     `content_type` TINYINT NOT NULL COMMENT '资源类型：1-歌曲，2-MV',
                                     `content_id` INT NOT NULL COMMENT '内容ID（歌曲ID或MV ID）',
                                     `first_play_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '首次播放时间',
                                     `last_play_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后播放时间',
                                     UNIQUE KEY `uk_user_content_type_id` (`user_id`, `content_type`, `content_id`),
                                     INDEX `idx_user_id` (`user_id`),
                                     INDEX `idx_content_type` (`content_type`),
                                     INDEX `idx_content_id` (`content_id`),
                                     INDEX `idx_last_play_time` (`last_play_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='最近播放统计表（歌曲和MV通用）';