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. HTML5禁止img預覽該怎么解決?2. DADB.class.php文件的代碼怎么寫3. android - 優酷的安卓及蘋果app還在使用flash技術嗎?4. redis sentinel怎么跑守護進程以及日志記錄位置的?5. javascript - 頁面滾動條出現時如何防止頁面跳動6. mysqld無法關閉7. javascript - mongodb怎么設置用戶的賬戶不重復?8. javascript - onclick事件點擊不起作用9. python 字符串匹配問題10. javascript - "CommonsChunkPlugin now only takes a single argument.。。。。

網公網安備