1、数据表 collect ( id, title ,info ,vtype) 就这4个字段,其中 title 用定长,info 用text, id 是逐渐,vtype是tinyint,vtype是索引。这是一个基本的新闻系统的简单模型。现在往里面填充数据,填充10万篇新闻。
2、最后collect 为 10万条记录,数据库表占用硬盘1.6G。OK ,看下面这条sql语句:select id,title from collect limit 1000,10很快;基本上0.01秒就OK,再看下面的select id,title from collect limit 90000,10从9万条开始分页。
3、8-9秒完成。
4、看下面一条语句:select id from collect order by id limit 90000,10很快,0.04秒就OK。因为用了id主键做索引当然快。
-- 判断存储test是否存在,如果存在则删除
DROP PROCEDURE IF EXISTS test
-- 创建存储过程
CREATE PROCEDURE test()
BEGIN
-- 声明循环变量int型 i
DECLARE i INT DEFAULT 1
-- 设置i=0
set i=0
-- 循环100次
while i<100 do
-- if判断i为偶数
if i%2 = 0 THEN
-- 要实现的 *** 作 CONCAT(str1,str2,...) concat函数用于拼接子串和数字类型
INSERT into user(name,addr) VALUES(CONCAT('test',i,'ss'),'addr')
end if
-- i自增
set i=i+1
END WHILE
END
-- 调用存储过程
CALL test()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)