mysql多表查詢
問題描述
問題解答
回答1:最好存儲的時候根據name有個路由規則到這十個表中,如果是多維度查詢推薦使用es
回答2:比較蠢的方法是這樣:
SELECT ’table_0’, id FROM table_0 WHERE name = ?UNIONSELECT ’table_1’, id FROM table_1 WHERE name = ?UNION...SELECT ’table_9’, id FROM table_9 WHERE name = ?
然而不蠢的方法我還沒想到
回答3:我想到的查詢語句是這樣的:select * from (select id,name,’table0’ as t from table_0 union all select id,name,’table1’ as t from table_1 union all select id,name,’table2’ as t from table_2 ......) as t where t.name = ?
回答4:從功能設計來講,拆表后一般不需要考慮數據是從哪一張表獲取的,因為在哪一張表完全是系統內部的事情,對業務來講沒有意義。
depress說的查詢方法是可行的,或者是在表內部一個標識字段能說明是哪一張表。
比較理想的辦法是表拆分和ID和一定的規律,拿到ID后可以直接判斷屬于哪一張表,也省去了做UNION查詢的麻煩。如按照ID大小,每一百萬是一張表,這樣拿到ID可以直接判斷出屬于哪一張表。
相關文章:
1. PHP類中的$this2. angular.js - 各位大神們,你們混合開發,web方式中更推薦用什么框架呀? react?vue?angular?謝謝~3. angular.js - angularjs的自定義過濾器如何給文字加顏色?4. angular.js使用$resource服務把數據存入mongodb的問題。5. docker-machine添加一個已有的docker主機問題6. javascript - IOS微信audio標簽不能通過touchend播放7. java-ee - nginx做前端服務器,tomcat+apache做后端,那么war部署在哪里?8. 老師百度網盤分享一下WampServer的包啊,我們下載幾kb要下載一天的.9. objective-c - iOS開發支付寶和微信支付完成為什么跳轉到了之前開發的一個app?10. html5 - vuex 為什么需要action,我發現進行異步操作回調中直接操作mutation也沒有報錯
