首頁 後端開發 php教程 优化一句SQL语句!该怎么解决

优化一句SQL语句!该怎么解决

Jun 13, 2016 am 10:13 AM
and name pro

优化一句SQL语句!

SQL code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->select a.id,b.id as mycompid,b.typeid,b.co_end,a.pro_price,a.pro_name as realproname,a.discount_rate,a.bigpic,a.temp_url,b.co_name,c.pro_name,d.city_name,a.begindate,a.modifydate,a.pro_intro from product a left join company b on(a.userid=b.id) left join pro c on(b.proid=c.id) left join city d on(b.cityid=d.id) left join protype e on(a.typeid=e.id) where (a.pro_name like binary '%%' or a.pro_intro like binary '%%' or a.keywords like binary '%%') and co_type=112 and b.islock=0  and a.isdel=0 and a.comp_state=1 and b.islock=0 order by b.realtypeid desc,a.modifydate desc limit 0,20
登入後複製


给大家简单解释下这句,就是搜索产品列表显示页 product产品表记录6万 company是企业表 记录4万 pro是省份信息,city是城市信息,protype是产品分类信息,

主要是想搜索结果是以企业的等级排序,如果是同等级的就按产品的发布时间排序,所以就写了这么个SQL语句,不过效率真的很低,估计要6秒执行时间

我测试了下,主要原因就出在排序 order by b.realtypeid desc,a.modifydate desc 这上面

可是这个排序又必须要排,请大家帮我出出点子吧,应该怎么办!~

------解决方案--------------------
路过学习 望高手指点
------解决方案--------------------
我看一下
------解决方案--------------------
数据量比较大的时候,建议分批来取数据

试试这个会不会快一些
select a.id,b.id as mycompid,b.typeid,b.co_end,a.pro_price, a.pro_name as realproname,a.discount_rate,a.bigpic,a.temp_url,b.co_name, c.pro_name,d.city_name,a.begindate,a.modifydate,a.pro_intro from product a,company b,protype e
left join pro c on(b.proid=c.id) 
left join city d on(b.cityid=d.id) 
where a.userid=b.id and a.typeid=e.id and (a.pro_name like binary '%%' or a.pro_intro like binary '%%' or a.keywords like binary '%%') and co_type=112 and b.islock=0 and a.isdel=0 and a.comp_state=1 and b.islock=0 order by b.realtypeid desc,a.modifydate desc limit 0,20


------解决方案--------------------
b.realtypeid,a.modifydate给它们两列建立索引..
------解决方案--------------------
建议用视图!
------解决方案--------------------
如果数据太大,分步取然后用PHP处理还不不错的,在不行explain一下吧,
------解决方案--------------------
分段索引在排序吧 排序是很慢
------解决方案--------------------
你问题是出在left join上把
这么多大量数据的表进行连续left join 太大啊。。。
------解决方案--------------------
可以试试把条件常用的字段加上索引
------解决方案--------------------
(a.pro_name like binary '%%' or a.pro_intro like binary '%%' or a.keywords like binary '%%')

这个啥意思??
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

iPhone 15 Pro Max vs iPhone 14 Pro Max:它們之間的對比和差異是什麼? iPhone 15 Pro Max vs iPhone 14 Pro Max:它們之間的對比和差異是什麼? Sep 19, 2023 pm 08:29 PM

iPhone15Pro與iPhone14Pro:規格比較以下是iPhone15ProMax和iPhone14ProMax的規格比較:iPhone15ProMaxiPhone14ProMax顯示尺寸6.7吋6.7吋顯示技術超視網膜XDROLED超級視網膜XDROLED解析度2796x1290像素,460ppi2796x1290像素,赫2,000尼特尺寸6.29x3.02x0.32吋6.33x3.06x0.31吋重量221克240克

如何啟動小米手環8pro 如何啟動小米手環8pro Jan 14, 2024 am 08:51 AM

不少用戶在第一次接觸使用小米手環8的時候不知道該怎麼操作使用開機,其實方法也很簡單,我們只需要找到USB數據線然後把手錶和電源連接起來,然後衝一段時間電以後就可以按鍵開機了。小米手環8pro怎麼開機1、先把手錶安裝好,就是把主題和錶帶兩邊對接連上。 2、然後我們第一次開機是需要連接充電線的,連接方法就在手錶底部。 3.等待手錶震動一下就可以進行開機了,隨後就可以和你的手機進行連接了。 >>>

小米平板6和pro哪個值得入手 小米平板6和pro哪個值得入手 Feb 07, 2024 pm 08:36 PM

許多用戶都不太清楚小米平板6和pro哪個值得入手,從配置來看,肯定是Pro的更高配置是推薦的,但也要綜合價格和自己的預算來看,不同的產品定位的人群也是不同的。小米平板6和pro哪個值得入手答:小米平板6Pro會更好,不管是性能還是拍照續航都會更好。 1.處理器小米平板6:驍龍870小米平板6Pro:性能更強大的驍龍第一代驍龍8+處理器2、電池大小小米平板6:8840mAh,67W秒充小米平板6Pro:8600mAh,33W快充小米平板6的續航上表現會更加的優秀,但是充電會比較慢。 3.拍照小米平板6

小米Pro14發售日期 小米Pro14發售日期 Jan 05, 2024 pm 02:50 PM

小米pro14已經上市,而且它的配置作為商務辦公本來說也是非常不錯的了,而且還有三種處理器配置可以選擇,價格也不是特別高。很多小夥伴不知道小米Pro14的具體上市時間。小米pro14上市時間答:2021年11月10日小米Pro14銳龍版開啟預約,首發價5299元起。 2022年7月4日,小米筆電Pro14發布,7月8日零點正式開賣。小米pro14介紹1、螢幕配備14吋2.5K超視網膜屏,解析度為2560x1600,屏佔比高達88%,擁有100%sRGB色域,刷新率為120Hz。 2.外觀採用6系

三攝加持 20 倍變焦,榮耀親選小湃智慧攝影機 Pro 創新來襲 三攝加持 20 倍變焦,榮耀親選小湃智慧攝影機 Pro 創新來襲 Aug 23, 2024 pm 09:44 PM

您家裡裝攝影機了嗎?近些年,家用攝影機產品一下就成了爆款。我問了身邊的朋友們,好傢伙~居然每家都有,甚至有的還不只一台。但隨著產品的普及,也隨之帶來了一些使用過程中的吐槽點。例如同一時間只能看到一個地方,再想看其他地方還得來回調整雲台旋轉攝像頭,觀看畫面有一定的盲區和時間差;或者想仔細看看家中某個位置時,發現畫面模糊根本看不清晰;等等......在體驗上大打折扣。榮耀親選與小湃科技共同推出榮耀親選小湃智慧攝影機Pro主打"三鏡頭雙人畫面"。為業界及用戶痛點提供了全新的解決思路

macbookair和pro的差別 macbookair和pro的差別 Feb 08, 2024 am 09:57 AM

macbookair是蘋果的筆記型電腦,許多用戶好奇macbookair和pro之間,有哪些區別,這兩個筆記本在處理器核心,主頻以及顯示卡類型上都有一些區別。 macbookair和pro的差別:1、處理器核心,執行緒不同:macbookair的處理器擁有雙核心,四執行緒。而Pro比macbookair更強大,擁有四核心,八線程。 2.處理器主頻不同:macbookair的處理器是1.6GHz的主頻。 pro的處理器主頻是1.4GHz,比macbookair低了一些。 3.顯示卡不同:macbookair採

蘋果A17 Pro GPU將帶來什麼改變? 蘋果A17 Pro GPU將帶來什麼改變? Sep 18, 2023 pm 08:53 PM

蘋果繼續推動技術的界限,其創新的最新證明是蘋果A17ProGPU的推出。這個尖端組件擁有完全重新設計的GPU,並有望在效能、圖形和使用者體驗方面取得顯著改進。蘋果A17ProGPU,推出與iPhone15Pro一起,是半導體工程的奇蹟。它採用3nm製程製造,代表了小型化的重大飛躍,將比以往更多的電晶體封裝到單一晶片中。這項技術壯舉轉化為更高的電源效率和運算能力。蘋果A17ProGPU提供令人驚嘆的圖形A17Pro晶片的突出特點之一是其重新設計的GPU。 Apple在優化圖形性能方面投入了大量資金,使其

全系列 iPhone 15 航力比拼 iPhone 15 Plus 擊敗 15 Pro Max 全系列 iPhone 15 航力比拼 iPhone 15 Plus 擊敗 15 Pro Max Sep 30, 2023 pm 11:09 PM

雖然蘋果會推出iPhone的影片播放時間來讓用戶知道iPhone電池差不多可用。但是正常的用戶不會全天使用iPhone查看影片。 7款iPhone進行日常應用的持久力測試。內含iPhone15ProMax、iPhone15Pro、iPhone15Plus、iPhone15、iPhone14ProMax、iPhone14及iPhone13ProMax共7款。橫跑一些日常的應用,例如Spotify、Zoom、Tiktok、Headspace想想App、遊戲等等,由此可見不同iPhone的持航力。此

See all articles