标签:sch 临时表 查询 star having auto 限制 weight utf8mb4
/* Navicat Premium Data Transfer Source Server : root@localhost Source Server Type : MySQL Source Server Version : 50527 Source Host : localhost:3306 Source Schema : leyou Target Server Type : MySQL Target Server Version : 50527 File Encoding : 65001 Date: 22/05/2019 18:03:38 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for tb_coupon -- ---------------------------- DROP TABLE IF EXISTS `tb_coupon`; CREATE TABLE `tb_coupon` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘优惠卷id‘, `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT ‘优惠卷名称‘, `type` enum(‘1‘,‘2‘,‘3‘) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT ‘优惠卷类型,1、抵扣 2、折扣(打折)‘, `condition` bigint(20) NULL DEFAULT 0 COMMENT ‘抵扣或折扣条件,如果没有限制,则设置为0‘, `reduction` bigint(20) NULL DEFAULT 0 COMMENT ‘优惠金额‘, `discount` int(3) NULL DEFAULT 100 COMMENT ‘如果没有折扣,为100。如果是八五折,折扣为85‘, `targets` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT ‘‘ COMMENT ‘优惠券可以生效的sku的id拼接,以,分割‘, `stock` int(6) NOT NULL COMMENT ‘剩余优惠券数量‘, `start_time` datetime NOT NULL COMMENT ‘优惠券生效时间‘, `end_time` datetime NOT NULL COMMENT ‘优惠券失效时间‘, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = ‘优惠卷表‘ ROW_FORMAT = Compact; -- ---------------------------- -- Records of tb_coupon -- ---------------------------- INSERT INTO `tb_coupon` VALUES (1, ‘uuu‘, ‘1‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); INSERT INTO `tb_coupon` VALUES (2, ‘uuu‘, ‘1‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); INSERT INTO `tb_coupon` VALUES (3, ‘ddd‘, ‘2‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); INSERT INTO `tb_coupon` VALUES (4, ‘ddd‘, ‘2‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); INSERT INTO `tb_coupon` VALUES (5, ‘eee‘, ‘2‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); INSERT INTO `tb_coupon` VALUES (6, ‘eee‘, ‘3‘, 0, 0, 100, ‘‘, 2, ‘1000-01-01 00:00:00‘, ‘1000-01-01 00:00:00‘); SET FOREIGN_KEY_CHECKS = 1;
SELECT type FROM tb_coupon GROUP BY type HAVING count(type) > 1;
SELECT min(id) FROM tb_coupon GROUP BY type HAVING count(type) > 1;
SELECT id FROM tb_coupon WHERE type in( SELECT type FROM tb_coupon GROUP BY type HAVING count(type) > 1) AND id not IN(SELECT min(id) FROM tb_coupon GROUP BY type HAVING count(type) > 1);
SELECT id from ( SELECT id FROM tb_coupon WHERE type in( SELECT type FROM tb_coupon GROUP BY type HAVING count(type) > 1) AND id not IN(SELECT min(id) FROM tb_coupon GROUP BY type HAVING count(type) > 1) ) as t;
DELETE FROM tb_coupon WHERE id IN ( SELECT id from ( SELECT id FROM tb_coupon WHERE type in( SELECT type FROM tb_coupon GROUP BY type HAVING count(type) > 1) AND id not IN(SELECT min(id) FROM tb_coupon GROUP BY type HAVING count(type) > 1) ) as t );
从mysql数据库删除重复记录只保留其中一条(保留id最小的一条)
标签:sch 临时表 查询 star having auto 限制 weight utf8mb4
原文地址:https://www.cnblogs.com/Fooo/p/13128944.html