• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            網絡服務器軟件開發/中間件開發,關注ACE/ICE/boost

            C++博客 首頁 新隨筆 聯系 聚合 管理
              152 Posts :: 3 Stories :: 172 Comments :: 0 Trackbacks
                  有個存儲過程,功能是:根據用戶名查詢非好友的ID,代碼如下:
            begin

              select UserID  from  Users
                where
                UserID 
            != pUserID and
                Users.UserID  not 
            in
                (
                    select FriendID from Users_Friend where Users_Friend.UserID 
            = pUserID and DeleteFlag = 0
                )
                and
                Users.Name like BINARY  concat(
            '%',pUserName,'%')  ;

            end
             其中,pUserID是搜索者的UID,pUserName是要搜索的用戶名。今天發現這個存儲過程非常慢,分析結論是:not in 后面的select子查詢是每次都執行的,這出乎意料!mysql難道不能優化掉這樣的查詢嗎?
                  后來用了臨時表的方案,如下:
            begin

                Create TEMPORARY  Table  IF NOT EXISTS temp(FriendID 
            int );
                insert into temp(FriendID) select FriendID from Users_Friend where Users_Friend.UserID 
            = pUserID and DeleteFlag = 0;

                  select UserID  from  Users
                where
                UserID 
            != pUserID and
                Users.UserID  not 
            in
                (
                    select FriendID from temp
                )
                and
                Users.Name like BINARY  concat(
            '%',pUserName,'%')  ;

                drop TEMPORARY  table temp;
            end

            問題較好的解決了,因為臨時表temp中保存的都是好友的ID,非常快,不用每次都去執行好友的篩選邏輯。另外一種方式是:將好友ID作為參數傳遞到存儲過程中,在程序外面查詢好友,但要改動程序。
             
            posted on 2011-01-13 13:05 true 閱讀(2967) 評論(0)  編輯 收藏 引用 所屬分類: mysql
            精品久久久一二三区| 国产综合成人久久大片91| 亚洲AV无码久久精品蜜桃| a级成人毛片久久| 久久九九久精品国产免费直播| 久久99热这里只有精品66| 无码伊人66久久大杳蕉网站谷歌| 久久99久久无码毛片一区二区| 亚洲av日韩精品久久久久久a| 国产香蕉97碰碰久久人人| 日本人妻丰满熟妇久久久久久| 国内精品久久久久久不卡影院| 精品久久久无码人妻中文字幕 | 久久国产福利免费| 久久人爽人人爽人人片AV| 99久久国产综合精品网成人影院| 国产欧美久久久精品影院| 青青青青久久精品国产h| 久久久无码精品亚洲日韩京东传媒 | 亚洲va国产va天堂va久久| 欧美综合天天夜夜久久| 久久亚洲中文字幕精品有坂深雪| 亚洲精品高清一二区久久| 国产精品成人无码久久久久久| 91精品国产91久久综合| 久久这里只精品99re66| 久久这里只有精品视频99| 九九久久精品无码专区| 国产69精品久久久久99尤物| 色噜噜狠狠先锋影音久久| 99久久国产综合精品麻豆| 久久久噜噜噜www成人网| 久久久女人与动物群交毛片 | 久久夜色tv网站| 伊人久久大香线蕉精品| 国产99久久久久久免费看| 亚洲国产天堂久久综合网站| 青青草原1769久久免费播放| 伊人热人久久中文字幕| 久久精品国产亚洲Aⅴ香蕉| 人妻少妇精品久久|