mysql多表查詢
問題描述
問題解答
回答1:最好存儲的時候根據(jù)name有個路由規(guī)則到這十個表中,如果是多維度查詢推薦使用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:從功能設計來講,拆表后一般不需要考慮數(shù)據(jù)是從哪一張表獲取的,因為在哪一張表完全是系統(tǒng)內部的事情,對業(yè)務來講沒有意義。
depress說的查詢方法是可行的,或者是在表內部一個標識字段能說明是哪一張表。
比較理想的辦法是表拆分和ID和一定的規(guī)律,拿到ID后可以直接判斷屬于哪一張表,也省去了做UNION查詢的麻煩。如按照ID大小,每一百萬是一張表,這樣拿到ID可以直接判斷出屬于哪一張表。
相關文章:
1. Navicat for mysql 中以json格式儲存的數(shù)據(jù)存在大量反斜杠,如何去除?2. mysql建表報錯,查手冊看不懂,求解?3. mysql - 查詢數(shù)據(jù)庫某個字段不重復的值,按時間排序,如何寫呢?4. mysql - 在PHPMyadmin上亂搗鼓后出現(xiàn) 了 - #2002 - — 服務器沒有響應(或本地服務器的套接字沒有正確設置)。5. 數(shù)組排序,并把排序后的值存入到新數(shù)組中6. mysql - 數(shù)據(jù)庫多表聯(lián)合查詢插入其他庫7. php多任務倒計時求助8. javascript - 用了koa mysql2 一直出現(xiàn)一個error9. vue打包和PHP后臺怎樣同域名部署配置10. phpStudy怎么把mysql升級到7.x
