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. spring-mvc - spring-session-redis HttpSessionListener失效2. html5和Flash對抗是什么情況?3. 運行python程序時出現“應用程序發生異常”的內存錯誤?4. javascript - QQ第三方登錄的問題5. node.js - mongodb查找子對象的名稱為某個值的對象的方法6. 測試自動化html元素選擇器元素ID或DataAttribute [關閉]7. 在mac下出現了兩個docker環境8. 利用IPMI遠程安裝centos報錯!9. javascript - 在 model里定義的 引用表模型時,model為undefined。10. 淺談Vue使用Cascader級聯選擇器數據回顯中的坑

網公網安備