常用MYSQL语句

MySQL的SQL语句写法,除了那些基本的之外,还有一些也算比较常用的,这里记录下来,以便以后查找。 好记性不如烂笔头,这话说的太有道理了,一段时间不写它,还真容易忘记。大家不要纠结这些SQL语句包含的业务或是其它问题,本文只是一篇笔记而已。

1.将数据从T1表导入到T2表

INSERT INTO T2 (C1,C2) SELECT C1,C2 FROM T1 [WHERE C1 = XX AND C2 = XX ORDER BY C1]

2.使用T2表的NAME来更新T1表的NAME

UPDATE T1 AS A, T2 AS B SET A.NAME = B.NAME WHERE A.TID = B.ID

3.两表的关联更新

UPDATE T_ROLE_USER AS A,

(

    SELECT

        ID

    FROM

        T_USER

    WHERE

        DEPARTID IN (

            SELECT

                ID

            FROM

                T_DEPART

            WHERE

                LENGTH(ORG_CODE) = 9

        )) AS B

SET A.ROLEID = '123456'WHERE

    A.USERID = B.ID

4.自己和自己关联更新

UPDATE T_DEPART AS A,

(

    SELECT

        ID,

        SUBSTRING(ORG_CODE, 1, 6) ORG_CODE

    FROM

        T_DEPART

    WHERE

        LENGTH(ORG_CODE) = 8

    AND PARENT_DEPART_ID IS NOT NULL) AS B

SET A.PARENT_DEPART_ID = B.ID

WHERE

    SUBSTRING(A.ORG_CODE, 1, 6) = B.ORG_CODE

5.两表关联删除,将删除两表中有关联ID并且T2表NAME为空的两表记录

DELETE A,B FROM T1 AS A LEFT JOIN T2 AS B ON A.TID = B.ID WHERE B.NAME IS NULL

6.将统计结果插入到表

INSERT INTO SE_STAT_ORG (

    RECORD_DATE,

    ORG_ID,

    ORG_NAME,

    SIGN_CONT_COUNT,

    SIGN_ARRI_CONT_COUNT,

    SIGN_CONT_MONEY,

    SIGN_ARRI_CONT_MONEY,

    TOTAL_ARRI_CONT_COUNT,

    TOTAL_ARRI_MONEY,

    PUBLISH_TOTAL_COUNT,

    PROJECT_COUNT) SELECT    *FROM    (

        SELECT            '2012-06-09' RECORD_DATE,

            PARENT_ORG_ID,

            PARENT_ORG_NAME,

            SUM(SIGN_CONT_COUNT) SIGN_CONT_COUNT,

            SUM(SIGN_ARRI_CONT_COUNT) SIGN_ARRI_CONT_COUNT,

            SUM(SIGN_CONT_MONEY) SIGN_CONT_MONEY,

            SUM(SIGN_ARRI_CONT_MONEY) SIGN_ARRI_CONT_MONEY,

            SUM(TOTAL_ARRI_CONT_COUNT) TOTAL_ARRI_CONT_COUNT,

            SUM(TOTAL_ARRI_MONEY) TOTAL_ARRI_MONEY,

            SUM(PUBLISH_TOTAL_COUNT) PUBLISH_TOTAL_COUNT,

            SUM(PROJECT_COUNT) PROJECT_COUNT,

        FROM SE_STAT_USER

        WHERE DATE_FORMAT(RECORD_DATE, '%Y-%m-%d') = '2012-06-09'

        GROUP BY PARENT_ORG_ID    ) M

7. 三表关联更新

UPDATE SE_STAT_USER A,

(

    SELECT

        USER_ID,

        SUM(INVEST_ORG_COUNT + FINANCIAL_ORG_COUNT + INTERMEDIARY_ORG_COUNT + ENTERPRISE_COUNT) AS COMMON_COUNT

    FROM SE_STAT_USER

    WHERE DATE_FORMAT(RECORD_DATE, '%Y-%m-%d') = '2012-06-09'

    GROUP BY USER_ID) B,

(

    SELECT

        USER_ID,

        SUM(ESTABLISH_COUNT + STOCK_COUNT + MERGER_COUNT + ACHIEVE_COUNT) AS PROJECT_COUNT

    FROM SE_STAT_USER

    WHERE DATE_FORMAT(RECORD_DATE, '%Y-%m-%d') = '2012-06-09'

    GROUP BY USER_ID) C

SET A.COMMON_COUNT = B.COMMON_COUNT, A.PROJECT_COUNT = C.PROJECT_COUNT

WHERE A.USER_ID = B.USER_ID

AND A.USER_ID = C.USER_ID

AND DATE_FORMAT(A.RECORD_DATE, '%Y-%m-%d') = '2012-06-09'

8.带条件的关联更新

UPDATE SE_STAT_USER A,

(

    SELECT

        P.CHANNEL,

        COUNT(P.CONT_ID) AS CONT_COUNT,

        C.CUST_MGR_ID

    FROM        (

            SELECT

                CHANNEL,

                CONT_ID

            FROM SK_PROJECT

            WHERE PROJECT_STATUS = 6

            AND DATE_FORMAT(AUDIT_TIME, '%Y-%m-%d') = '2012-06-11'

        ) p

    INNER JOIN SE_CONTRACT C ON P.CONT_ID = C.CONT_ID

    GROUP BY P.CHANNEL, C.CUST_MGR_ID) B

SET

    A.STOCK_COUNT = CASE WHEN B.CHANNEL = 2 THEN B.CONT_COUNT ELSE 0 END,

    A.ESTABLISH_COUNT = CASE WHEN B.CHANNEL = 3 THEN B.CONT_COUNT ELSE 0 END,

    A.ACHIEVE_COUNT = CASE WHEN B.CHANNEL = 4 THEN B.CONT_COUNT ELSE 0 END,

    A.BRAND_COUNT = CASE WHEN B.CHANNEL = 5 THEN B.CONT_COUNT ELSE 0 END,

    A.MERGER_COUNT = CASE WHEN B.CHANNEL = 6 THEN B.CONT_COUNT ELSE 0 ENDWHERE

    A.USER_ID = B.CUST_MGR_ID

AND DATE_FORMAT(A.RECORD_DATE, '%Y-%m-%d') = '2012-06-11'

9. 加索引

ALTER TABLE PROJECT ADD INDEX INDEX_USER_ID (USER_ID),

        ADD INDEX INDEX_PROJECT_STATUS (PROJECT_STATUS);

10.删除列

ALTER TABLE PROJECT DROP COLUMN PROJECT_STATUS,

        DROP COLUMN EXPECT_RETURN,DROP COLUMN CURRENCY;

11.增加列

ALTER TABLE PROJECT

        ADD COLUMN DICT_ID INT DEFAULT NULL COMMENT 'xxx' AFTER PROJECT_SITE,

        ADD COLUMN INTRODUCE TEXT DEFAULT NULL COMMENT 'xx' AFTER DICT_ID,

        ADD COLUMN STAGE INT DEFAULT NULL COMMENT 'xx' AFTER ID,

        ADD COLUMN ATTACH_URI VARCHAR(8) DEFAULT NULL COMMENT 'xxx' AFTER INTRODUCE;

12.修改列 一般用MODIFY修改数据类型,CHANGE修改列名。

ALTER TABLE PROJECT CHANGE DICT_ID DICT_ID1 INT NOT NULL,

        MODIFY PROJECT_STATUS TINYINT NOT NULL COMMENT 'xxx';

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,711评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,079评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,194评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,089评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,197评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,306评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,338评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,119评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,541评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,846评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,014评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,694评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,322评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,026评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,257评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,863评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,895评论 2 351

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,644评论 18 139
  • 失败是一个相对状态。譬如在大多数人看来,王思聪什么都不做就已经是人生赢家了,但他本人却说在超过他父亲之前都不算成功...
    傻强阅读 319评论 0 0
  • 周末去了趟北京。 大学毕业那年曾经和同学去过,玩了一周时间,对当时很宅的我来说算深度游了。此次再去,主要是当年留下...
    依朵心情阅读 164评论 0 0
  • 今天一打开简书,各种批判咪老师的消息上了封神榜啊!竟是由于那篇职场不相信眼泪。 于是简单看了一下,不得不说咪老师不...
    学好奇门遁甲阅读 448评论 0 1
  • 1、罗列2018年国内外大事
    喜欢高斯的洪堡阅读 140评论 0 0