亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sql中字符串匹配問題

sql中字符串匹配問題

楊__羊羊 2019-04-14 10:14:59
先上數據示例IDcat_id11,2,422,3311,13,17,1943,7,9,12這是某多對多關系在基于mysql的數據表中的表現形式(因為上頭說應用小用兩個表就算了)并且篩選查詢的要求如下表推送條件期望結果(ID)111,211,3null3,9432,4注:推送條件和期望結果都是以,隔開,實際上是個一維索引數組推送條件之間是AND關系目前鄙人想到的基于thinkphp的解決方案是:1.遍歷查詢結果,將cat_id化為數組2.判斷推送條件(數組形式,可以認為就是表單POST來的一維數組)是不是cat_id數組的子集。然而問題就在遍歷查詢結果,這里測試是:結果如果達到6000+條,執行時間需要3~20秒左右,比較慢。于是問一下,上表這樣的篩選要求能不能用sql語句實現,從而省掉遍歷的過程?
查看完整描述

2 回答

?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

個人感覺,應該可以用sql語句實現,可以寫幾個存儲函數,但這樣一來,估計工作量上可能比多加個中間表要困難許多,而且速度上估計也快不了,建議還是建個中間表
                            
查看完整回答
反對 回復 2019-04-14
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

這種集合的問題交給redis來做最方便不過了
127.0.0.1:6379>SADDcid_11127.0.0.1:6379>SADDcid_21127.0.0.1:6379>SADDcid_22127.0.0.1:6379>SADDcid_32127.0.0.1:6379>SADDcid_41127.0.0.1:6379>SINTERcid_1cid_21)"1"127.0.0.1:6379>sintercid_2cid_31)"2"
                            
查看完整回答
反對 回復 2019-04-14
  • 2 回答
  • 0 關注
  • 377 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號