午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

mysql優化 - MySQL中使用UNION進行兩表合并,去重導致效率低下,請問如何優化?

瀏覽:155日期:2022-06-21 15:42:56

問題描述

如下SQL語句在MySQL中執行需要2秒左右的時間,如果使用UNION ALL進行不去重合并只需要0.4秒,UNION ALL配合DISTINCT來去重速度又變成2秒了,請問如何進行優化?

SELECT a. KEY, a. DATA, a.date_addedFROM (( SELECTCONCAT(’customer_’, ca. KEY) AS `key`,ca. DATA,ca.date_added FROM`cf_customer_activity` ca)UNION (SELECT CONCAT(’affiliate_’, aa. KEY) AS `key`, aa. DATA, aa.date_addedFROM `cf_affiliate_activity` aa ) ) aORDER BY a.date_added DESCLIMIT 0, 5;

問題解答

回答1:

看你寫的語句key前綴不一樣永遠不會有重復啊,直接union all

回答2:

當然先是使用QEP

mysql> explain select * from wp_options limit 1G;*************************** 1. row *************************** id: 1 select_type: SIMPLEtable: wp_options partitions: NULL type: ALLpossible_keys: NULL key: NULL key_len: NULL ref: NULL rows: 136 filtered: 100.00Extra: NULL1 row in set, 1 warning (0.01 sec)mysql> show session status like ’Handler_read%’;+-----------------------+-------+| Variable_name | Value |+-----------------------+-------+| Handler_read_first | 3 || Handler_read_key | 3 || Handler_read_last | 0 || Handler_read_next | 0 || Handler_read_prev | 0 || Handler_read_rnd | 0 || Handler_read_rnd_next | 209 |+-----------------------+-------+7 rows in set (0.01 sec)

至于每個字段的具體含義,自己查資料。

回答3:

@prolifes 是對的。也許題主沒表述清楚。

我補充另外一個思路,因為你最后只需要5條數據,從ca中取5條,再從aa中取5條,總共10條排序,這個會很快。

SELECT a. KEY, a. DATA, a.date_addedFROM (( SELECTCONCAT(’customer_’, ca. KEY) AS `key`,ca. DATA,ca.date_added FROM`cf_customer_activity` ca ORDER BY a.date_added DESC /* 如果date_added有索引的話,這個會比較快 */ LIMIT 0,5)UNION ALL (SELECT CONCAT(’affiliate_’, aa. KEY) AS `key`, aa. DATA, aa.date_addedFROM `cf_affiliate_activity` aaORDER BY a.date_added DESC /* 如果date_added有索引的話,這個會比較快 */ LIMIT 0,5 ) ) aORDER BY a.date_added DESCLIMIT 0, 5;

主站蜘蛛池模板: a级片在线看 | 国产视频一区在线观看 | 久久99操 | 久久精品人人 | 我要看一级黄色录像 | 神马久久久久久久久 | 亚洲天堂婷婷 | 日韩精品视频在线看 | 91精品在线视频观看 | 日韩a级大片| 91动漫免费网站 | 人人澡人人干 | 色爱综合 | 老司机黄色影院 | 超碰在线 | 久草视频在线看 | 高清一区二区 | 日韩首页 | 成人福利网 | 欧洲三级视频 | 91久久精品日日躁夜夜躁国产 | 亚洲午夜在线播放 | 国产精品美女一区二区三区 | 国产免费aa | 99热这里只有精品99 | 99热这里是精品 | 亚洲色图一区二区 | 免费福利在线 | 粉嫩av一区二区三区四区五区 | 精品国产第一页 | 欧美视频国产 | 欧美中文字幕一区 | 色婷婷亚洲综合 | 一本岛在线 | 久久资源在线 | a√在线观看| 成人日皮视频 | 不卡av网| 热久久国产精品 | 欧美精品久久久久久久久老牛影院 | 中文字幕免费观看视频 |