mysql optimizing_读Effective Mysql:optimizing SQL Statements 笔记

http://effectivemysql.com/downloads/words 获取数据源

CREATE CHEMA IF NOT EXISTS book;

use book;

CREATE TABLE source_words(

word VARCHAR(50) NOT NULL;

index (word)

) ENGINE = MyISAM;

LOAD DATA LOCAL INFILE '/usr/share/dict/words'

INTO TABLE source_words(word);

CREATE TABLE million_words(

id INT UNSIGNED NOT NULL AUTO_INCREMENT;

word VARCHAR(50) NOT NULL;

PRIMARY KEY (id),

UNIQUE INDEX(word);

) ENGINE=InnoDB;

INSERT INTO million_words(word)

SELECT DISTINCT word FROM source_words;

INSERT INTO million_words(word)

SELECT DISTINCT REVERSE(word) FROM source_words

WHERE REVERSE(word) NOT IN (SELECT word FROM source_words);

SELECT @cint := COUNT(*) FROM million_words;

SELECT @diff :=1000000 - @cnt;

-- We need to run dynamic SQL to support a variable LIMIT

SET @sql = CONCAT("

INSERT INTO million_words(word)

SELECT DISTINCT CONCAT(word,'X1Y') FROM source_words LIMIT ",@diff);

PREPARE cmd FROM @sql;

EXECUTE cmd;

SELECT COUNT(*) FROM million_words;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值