MySQL 常用 SQL

  1. 使用 mysql 的 replace 函数替换字符串
  2. 把一张表插入到另一张表
  3. 强制 MySQL 使用某个索引

使用 mysql 的 replace 函数替换字符串

比如你要将 表 tb1 里面的 f1 字段的 abc 替换为 def

UPDATE tb1 SET f1=REPLACE(f1, 'abc', 'def');

把一张表插入到另一张表

如果2张表的字段一致,并且希望插入全部数据,可以用这种方法:

insert into insertTest select * from insertTest2;

如果只希望导入指定字段,可以用这种方法,注意字段的顺序必须一致:

insert into insertTest2(id) select id from insertTest2;

如果您需要只导入目标表中不存在的记录,可以使用这种方法:

INSERT INTO insertTest2 (id, NAME) SELECT
    id,
    NAME
FROM
    insertTest
WHERE
    NOT EXISTS (
        SELECT
            *
        FROM
            insertTest2
        WHERE
            insertTest2.id = insertTest.id
    );

强制 MySQL 使用某个索引

https://stackoverflow.com/questions/11731822/how-to-hint-the-index-to-use-in-a-mysql-select-query

SELECT * FROM your_table USE INDEX (i_iln) WHERE ....

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 bin07280@qq.com

文章标题:MySQL 常用 SQL

文章字数:204

本文作者:Bin

发布时间:2018-09-13, 16:06:22

最后更新:2019-08-06, 00:55:04

原始链接:http://coolview.github.io/2018/09/13/MySQL/MySQL%20%E5%B8%B8%E7%94%A8%20SQL/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录