CREATE TABLE `slot_and_material_info` ( `id` bigint NOT NULL COMMENT '主键CREATE TABLE `render_project_info` ( `id` bigint NOT NULL COMMENT '主键', `material_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '素材名字', `material_id` bigint NOT NULL COMMENT '素材项目表主键id', `position_count` int NOT NULL DEFAULT '0' COMMENT '坑位数量(总数)', `status` int NOT NULL DEFAULT '1' COMMENT '坑位渲染状态(1未开始 2渲染中 3已完成 4暂停中 5渲染失败)', `create_time` datetime NOT NULL COMMENT '创建时间', `update_time` datetime NOT NULL COMMENT '更新时间', `priority` bigint NOT NULL DEFAULT '1' COMMENT '优先级 (举例:1最小 10000最大)', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='渲染项目队列表';id', `material_id` bigint DEFAULT NULL COMMENT '素材项目表id', `slot_type` int NOT NULL COMMENT '0是2d 1是3d', `slot_id` bigint DEFAULT NULL COMMENT '坑位id', `create_time` datetime NOT NULL COMMENT '创建时间', `update_time` datetime NOT NULL COMMENT '更新时间' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='坑位和素材项目详情表 ';
这段代码是用来创建两个表的,分别是渲染项目队列表和坑位和素材项目详情表。其中渲染项目队列表包含id、素材名字、素材项目表主键id、坑位数量、坑位渲染状态、创建时间、更新时间和优先级等字段;坑位和素材项目详情表包含id、素材项目表id、坑位类型、坑位id、创建时间和更新时间等字段。这些表都使用了InnoDB引擎,字符集为utf8mb4,排序规则为utf8mb4_unicode_ci。
CREATE TABLE `mtp_rsk_uniapp_user_archive` ( `TENANT_ID` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '000000' COMMENT '租户ID', `BATCH_ID` bigint NOT NULL DEFAULT '0' COMMENT '批ID (回溯:-9999 ,线下导入首次登录:-8888)', `ID` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `IS_DELETED` int NOT NULL DEFAULT '0' COMMENT '是否删除', `REVISION` bigint NOT NULL DEFAULT '1' COMMENT '对象版本号', `CREATE_USER` bigint NOT NULL COMMENT '创建人', `CREATE_DEPT` bigint DEFAULT NULL COMMENT '创建部门', `CREATE_TIME` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `UPDATE_USER` bigint NOT NULL COMMENT '更新人', `UPDATE_TIME` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `UNIAPP_USER_ID` bigint NOT NULL COMMENT 'C端用户表ID', `AUTH_COMPLETE_TIME` datetime DEFAULT NULL COMMENT '认证完成时间', `IS_BLACK` int NOT NULL DEFAULT '0' COMMENT '是否黑名单', `UNIAPP_USER_AUTH_ID` bigint NOT NULL COMMENT 'C端用户实名认证表', `IS_RELEVANCE_YSC` int DEFAULT '0' COMMENT '是否顺顺灵工,1-是,0-否', `BLACK_REASON` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '黑名单移入&移出备注', PRIMARY KEY (`ID`), KEY `uniapp_user_archive_n1` (`UNIAPP_USER_ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1665890968321466371 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='灵工档案卡';
这个表的建表语句看起来没有明显的问题,但是如果你需要优化查询速度的话,可以考虑以下几点:
索引优化:当前表只有一个索引,如果你的查询语句中经常用到其他字段进行查询或者排序,可以考虑添加相应的索引来优化查询速度。比如,如果你经常使用
IS_DELETED
字段进行查询,可以添加一个IS_DELETED
字段的索引。数据库引擎优化:当前表使用的是 InnoDB 引擎,如果你的查询语句中经常使用到全表扫描、聚合计算等操作,可以考虑使用 MyISAM 引擎来优化查询速度。但是需要注意的是,MyISAM 引擎不支持事务,所以需要根据实际情况来选择。
数据库分区优化:如果当前表数据量非常大,可以考虑使用数据库分区来优化查询速度。比如,可以按照时间范围来进行分区,以便根据时间范围快速定位到需要查询的数据。
SQL语句优化:如果你的查询语句中存在子查询、联合查询等复杂的操作,可以考虑对SQL语句进行优化,以减少查询时间。比如,可以使用 EXISTS 替换 IN 子查询等。
以上是我对于优化SQL的一些建议,希望对你有所帮助。如果你有具体的查询语句或者需要更深入的优化建议,请提供更多的信息。
表结构:-- auto-generated definition create table budget_field_config ( id bigint unsigned auto_increment comment '主键' primary key, command varchar(20) default '' not null comment '指令', header_name varchar(255) default '' not null comment '表头名称', field_code varchar(50) default '' not null comment '字段编码', field_name varchar(255) default '' not null comment '字段名称', field_type varchar(50) default '' not null comment '字段类型', format_type varchar(50) default '' not null comment '格式化类型', format_value varchar(1024) default '' not null comment '格式化取值', required tinyint default 0 not null comment '是否必填', validate_expression varchar(255) default '' not null comment '校验表达式', validate_msg varchar(255) default '' not null comment '校验提示信息', unique_code tinyint default 0 not null comment '是否参与业务唯一编码的生成', show_header tinyint default 0 not null comment '是否为展示表头', sort int default 0 not null comment '排序值', create_user_id bigint default 0 not null comment '创建人', update_user_id bigint default 0 not null comment '最后更新人', valid_time timestamp(6) default '1970-01-01 08:00:01.000000' not null comment '生效时间', invalid_time timestamp(6) default '2038-01-01 08:00:01.000000' not null comment '失效时间', create_time timestamp(6) default CURRENT_TIMESTAMP(6) not null comment '创建时间', update_time timestamp(6) default CURRENT_TIMESTAMP(6) not null on update CURRENT_TIMESTAMP(6) comment '最后更新时间', is_delete tinyint default 0 not null comment '是否删除' ) comment '预算字段配置'; create index idx_command on budget_field_config (command); create index idx_create_time on budget_field_config (create_time); create index idx_update_time on budget_field_config (update_time);
根据表结构,如果要创建一个视图,可以按照以下方式进行:
CREATE VIEW budget_field_view AS
SELECT id, command, header_name, field_code, field_name, field_type, format_type, format_value, required,
validate_expression, validate_msg, unique_code, show_header, sort, create_user_id, update_user_id,
valid_time, invalid_time, create_time, update_time, is_delete
FROM budget_field_config;
这个视图将会和 budget_field_config
表具有相同的列,但是对于一些特殊的需求,你可以对这个 SQL 语句进行修改,来达到你所需要的视图效果。
相关推荐

















