首页 > 数据库技术 > 详细

常用SQL

时间:2020-05-14 12:44:11      阅读:51      评论:0      收藏:0      [点我收藏+]
  • 单表根据某字段去重,保留主键ID最小一条。需要移除SQL_MODEL中的ONLY_FULL_GROUP_BY。通过SELECT @@SQL_MODE;命令查看。
技术分享图片
-- 移除wm_im_notice_i表中other_id重复的并且保留ID最小的行。
DELETE
FROM
    `wm_im_notice_i`
WHERE
    `other_id` IN(
    SELECT
        other_id
    FROM
        (
        SELECT
            `other_id`
        FROM
            `wm_im_notice_i`
        GROUP BY
            `other_id`
        HAVING
            COUNT(*) > 1
    ) AS t1
) AND id NOT IN(
    SELECT
        id
    FROM
        (
        SELECT
            MIN(id) AS id
        FROM
            `wm_im_notice_i`
        GROUP BY
            `other_id`
        HAVING
            COUNT(*) > 1
    ) AS t2
)
View Code
  •  连表更新
技术分享图片
-- eg 左连接
UPDATE wm_im_notice_i AS i
        LEFT JOIN
    wm_im_notice_h AS h ON h.im_cus_code = i.im_cus_code 
SET 
    i.im_notice_id = h.notice_id
View Code

 

常用SQL

原文:https://www.cnblogs.com/qiutianjia/p/12887549.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!