亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Access > 正文

MySQL查詢優化:連接查詢排序limit(join、order by、limit語句)介紹

2024-09-07 19:04:18
字體:
來源:轉載
供稿:網友
不知道有沒有人碰到過這樣惡心的問題:兩張表連接查詢并limit,SQL效率很高,但是加上order by以后,語句的執行時間變的巨長,效率巨低。

情況是這么一個情況:現在有兩張表,team表和people表,每個people屬于一個team,people中有個字段team_id。
下面給出建表語句:
復制代碼 代碼如下:www.49028c.com

create table t_team
(
id int primary key,
tname varchar(100)
);
create table t_people
(
id int primary key,
pname varchar(100),
team_id int,
foreign key (team_id) references t_team(id)
);

下面我要連接兩張表查詢出前10個people,按tname排序。
于是,一個SQL語句誕生了:select * from t_people p left join t_team t on p.team_id=t.id order by p.pname limit 10; [語句①]
這個是我第一反應寫的SQL,通俗易懂,也是大多數人的第一反應。然后來測試一下這個語句的執行時間。首先要準備數據。我用存儲過程在t_team表中生成1000條數據,在t_people表中生成100000條數據。(存儲過程在本文最后)
執行上面那條SQL語句,執行了好幾次,耗時在3秒左右。

再換兩個語句對比一下:
1.把order by子句去掉:select * from t_people p left join t_team t on p.team_id=t.id limit10; [語句②]
耗時0.00秒,忽略不計。

2.還是使用order by,但是把連接t_team表去掉:select * from t_people p order by p.pname limit 10; [語句③]
耗時0.15秒左右。
對比發現[語句①]的效率巨低。
為什么效率這么低呢。[語句②]和[語句③]執行都很快,[語句①]不過是二者的結合。如果先執行[語句③]得到排序好的10條people結果后,再連接查詢出各個people的team,效率不會這么低。那么只有一個解釋:MySQL先執行連接查詢,再進行排序。
解決方法:如果想提高效率,就要修改SQL語句,讓MySQL先排序取前10條再連接查詢。

SQL語句:
select * from (select * from t_people p order by p.pname limit 10) p left join t_team t on p.team_id=t.id limit 10; [語句④]
[語句④]和[語句①]功能一樣,雖然有子查詢,雖然看起來很別扭,但是效率提高了很多,它的執行時間只要0.16秒左右,比之前的[語句①] (耗時3秒) 提高了20倍。
這兩個表的結構很簡單,如果遇到復雜的表結構…我在實際開發中就碰到了這樣的問題,使用[語句①]的方式耗時80多秒,但使用[語句④]只需1秒以內。

最后給出造數據的存儲過程:
復制代碼 代碼如下:www.49028c.com

CREATE PROCEDURE createdata()
BEGIN
DECLARE i INT;
START TRANSACTION;
SET i=0;
WHILE i<1000 DO
INSERT INTO t_team VALUES(i+1,CONCAT('team',i+1));
SET i=i+1;
END WHILE;
SET i=0;
WHILE i<100000 DO
INSERT INTO t_people VALUES(i+1,CONCAT('people',i+1),i%1000+1);
SET i=i+1;
END WHILE;
COMMIT;
END

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品视频在线免费观看| 亚洲男人第一av网站| 亚洲女同精品视频| 欧洲成人午夜免费大片| 成人高h视频在线| 欧美专区福利在线| 欧美一二三视频| 欧美精品www| 91网站在线免费观看| 久久亚洲精品网站| 中文字幕国产精品久久| 国产91在线视频| 狠狠做深爱婷婷久久综合一区| 久久久久国色av免费观看性色| 日韩在线视频一区| 91精品国产自产在线| 成人精品网站在线观看| 日韩亚洲精品视频| 国产精品久久久久7777婷婷| 夜夜嗨av色一区二区不卡| 国产精品福利在线| 国产亚洲xxx| 欧美精品日韩www.p站| 日韩一区二区三区国产| 性色av一区二区咪爱| 91精品视频在线| 91精品国产91久久久久久久久| 亚洲国产日韩欧美在线图片| 中文字幕日韩av电影| 亚洲欧美综合区自拍另类| 2018中文字幕一区二区三区| 欧美黄色www| 91精品国产777在线观看| 日韩不卡中文字幕| 国产精品美女av| 欧美在线观看一区二区三区| 欧美丝袜美女中出在线| 国产精品三级久久久久久电影| 亚洲第一级黄色片| 欧美日韩精品在线观看| 日韩av手机在线观看| 亚洲国产日韩精品在线| 91av在线播放| 亚洲国产一区自拍| 自拍视频国产精品| 91精品国产色综合久久不卡98| 亚洲视频免费一区| 欧洲永久精品大片ww免费漫画| 国产亚洲成av人片在线观看桃| 91福利视频网| 2019日本中文字幕| 欧美黄色片免费观看| 亚洲午夜激情免费视频| 一二美女精品欧洲| 日韩中文字幕视频| 国产精品678| 久久精品人人爽| xxx成人少妇69| 欧美激情国内偷拍| 国产精品久久久久久久久影视| 丰满岳妇乱一区二区三区| 日韩精品在线第一页| 亚洲一区二区三区视频播放| 日韩经典第一页| 久久99精品久久久久久噜噜| 久久精品亚洲94久久精品| 国产午夜精品美女视频明星a级| 另类视频在线观看| 欧美日韩国产精品| 97精品视频在线观看| 亚洲乱码国产乱码精品精天堂| 亚洲精品美女在线观看播放| 精品久久久久久久久国产字幕| 麻豆一区二区在线观看| 亚洲福利小视频| 日韩av在线最新| 97香蕉久久超级碰碰高清版| 一区二区亚洲欧洲国产日韩| 精品福利免费观看| 91视频九色网站| 中文字幕亚洲欧美在线| 亚洲毛片在线看| 亚洲免费一在线| 久久天堂电影网| 成人免费观看a| 91超碰caoporn97人人| 国产国产精品人在线视| 欧美激情2020午夜免费观看| 庆余年2免费日韩剧观看大牛| 亚洲无限乱码一二三四麻| 亚洲石原莉奈一区二区在线观看| 永久555www成人免费| 97人人模人人爽人人喊中文字| 亚洲第一区第二区| 欧美日韩性视频在线| 国产精品一二三视频| 91精品国产自产在线观看永久| 亚洲激情在线观看视频免费| 久久久久久久久久久网站| 日韩av三级在线观看| 一区二区三区视频免费在线观看| 国产一区二区丝袜| 91亚洲国产成人久久精品网站| 欧美精品18videosex性欧美| 日韩精品中文字幕在线播放| 在线看片第一页欧美| 日韩精品中文字幕在线播放| 久久久精品亚洲| 欧美精品videossex88| 久久久女人电视剧免费播放下载| 在线国产精品视频| 亚洲成人aaa| 欧美性少妇18aaaa视频| 国产99久久精品一区二区 夜夜躁日日躁| 97免费视频在线播放| 国产精品伦子伦免费视频| 日韩日本欧美亚洲| 亚洲区免费影片| 亚洲国产福利在线| 91精品国产高清久久久久久91| 亚洲激情小视频| 日韩视频欧美视频| 98午夜经典影视| 日韩**中文字幕毛片| 亚洲精品720p| 亚洲天堂2020| 国产精品成人国产乱一区| 日本一区二三区好的精华液| 久久亚洲精品中文字幕冲田杏梨| 精品久久久久久久久久久久久久| 人体精品一二三区| 日韩中文字幕精品| 亚洲精品狠狠操| 日韩精品在线免费观看| 成人免费观看49www在线观看| 欧美激情在线播放| 欧美精品一区二区免费| 亚洲视频一区二区三区| 国产精品日本精品| 国产一区二区三区免费视频| 久久久成人的性感天堂| 国产精品91免费在线| 成人动漫网站在线观看| 国产精品久久久久久久美男| 国产精品成人在线| 久久精品91久久香蕉加勒比| 亚洲网址你懂得| 日韩精品中文字幕视频在线| 国产视频精品xxxx| 国产精品视频色| 亚洲精品成人久久久| 91亚洲国产精品| 亚洲xxxxx性| 精品中文字幕久久久久久| 日韩综合中文字幕| 国产精品第一视频| 日韩欧美在线国产| 国产精品一区二区电影| 欧美黑人xxxⅹ高潮交| 亚洲欧美精品suv| 亚洲高清av在线| 欧美激情视频网址| 久久久av电影| 国产午夜精品理论片a级探花|