创建、删除、查看索引
// 创建
ALTER TABLE table_name ADD INDEX index_name (column_list);
ALTER TABLE table_name ADD UNIQUE (column_list);
ALTER TABLE table_name ADD PRIMARY KEY (column_list);
CREATE INDEX index_name ON table_name (column_list);
CREATE UNIQUE INDEX index_name ON table_name (column_list);
CREATE TABLE `pack_group` (
PRIMARY KEY (`id`),
UNIQUE `idx_shop_beehive_packable_time` (`shop_id`,`beehive_id`,`packable_time`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='分组状态表';
// 删除
DROP INDEX index_name ON talbe_name;
ALTER TABLE table_name DROP INDEX index_name;
ALTER TABLE table_name DROP PRIMARY KEY;
// 查看
show index from tblname;
show keys from tblname;
作者:会灰翔的灰机
链接:https://juejin.cn/post/7120408229414174727
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
查看事务
SELECT
a.trx_id,
a.trx_state,
a.trx_started,
a.trx_query,
a.trx_weight,
a.trx_lock_memory_bytes,
b.ID,
b.USER,
b.DB,
b.COMMAND,
b.TIME,
b.STATE,
b.INFO,
c.PROCESSLIST_USER,
c.PROCESSLIST_HOST,
c.PROCESSLIST_DB,
d.SQL_TEXT
FROM
information_schema.INNODB_TRX a
LEFT JOIN
information_schema.PROCESSLIST b
ON
a.trx_mysql_thread_id = b.id
LEFT JOIN
PERFORMANCE_SCHEMA.threads c
ON
b.id = c.PROCESSLIST_ID
LEFT JOIN
PERFORMANCE_SCHEMA.events_statements_current d
ON
d.THREAD_ID = c.THREAD_ID;
开窗函数实现
SELECT
*
FROM
(
SELECT
IF(@v_department_id=c.department_id,@rn:=@rn+1,@rn:=1) AS rn,
@v_department_id:= c.department_id,
c.department_id,
c.name,
c.salary
FROM
(
SELECT
b.DEPARTMENT_ID,
b.name,
SUM(b.SALARY) SALARY
FROM
department a,
salary b
WHERE
a.id = b.department_id
GROUP BY
b.DEPARTMENT_ID,
b.name) c, (select @v_department_id:=-1) d
ORDER BY
c.department_id,
c.salary DESC) d
WHERE
d.rn=1;
//试验数据
CREATE TABLE department (id int, name varchar(100)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE salary (department_id int, name varchar(100), salary int) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO department (id, name) VALUES (1, '霸气的部门');
INSERT INTO department (id, name) VALUES (2, '牛皮的部门');
INSERT INTO department (id, name) VALUES (3, '最拽的部门');
INSERT INTO salary (department_id, name, salary) VALUES (1, 'Superman', 1000);
INSERT INTO salary (department_id, name, salary) VALUES (1, 'Superman', 2000);
INSERT INTO salary (department_id, name, salary) VALUES (1, 'spiderman', 3500);
INSERT INTO salary (department_id, name, salary) VALUES (1, 'hulk', 6000);
INSERT INTO salary (department_id, name, salary) VALUES (2, 'Jack', 5000);
INSERT INTO salary (department_id, name, salary) VALUES (2, 'Rose', 3000);
INSERT INTO salary (department_id, name, salary) VALUES (2, 'Tom', 4000);
INSERT INTO salary (department_id, name, salary) VALUES (3, 'Jerry', 2000);
INSERT INTO salary (department_id, name, salary) VALUES (3, 'Harry', 3000);
Data Quality SQl DDL
/*
Navicat Premium Data Transfer
Source Server : yt37
Source Server Type : MySQL
Source Server Version : 80023
Source Host : 127.0.0.1:3306
Source Schema : bigdata-backstage
Target Server Type : MySQL
Target Server Version : 80023
File Encoding : 65001
Date: 24/03/2023 15:06:09
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for met_quality_task
-- ----------------------------
CREATE TABLE `met_quality_task` (
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
`dw_id` int DEFAULT NULL COMMENT '数仓id',
`task_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '任务名称',
`task_comment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '任务描述',
`monitor_num` int DEFAULT '0' COMMENT '监测次数',
`warn_num` int DEFAULT '0' COMMENT '预警次数',
`rule_id` int DEFAULT NULL COMMENT '绑定规则',
`bind_tbl` int DEFAULT NULL COMMENT '绑定表',
`bind_col` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '绑定字段',
`target_begin` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '目标范围起',
`target_end` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '目标范围始',
`monitor_freq` int DEFAULT '0' COMMENT '监测频率',
`create_user` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`update_user` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '更新人',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
`status` int DEFAULT '1' COMMENT '状态 1-上线 0-下线',
`is_delete` tinyint(1) DEFAULT '0' COMMENT '是否删除 1-是 0-否',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='数据质量-质检任务';