mysql執行多表查詢,大資料,sql該如何寫

來源:互聯網
上載者:User
mysql執行多表查詢,大資料,sql該怎麼寫。
假設兩個表 A B。兩個表結構相同。現在要取出A表的所有欄位和B表的set,rutime欄位。兩個表的ID相同。

因為資料量比較大,兩個表在100w左右,之後還可能會有多個這樣大的表。
我在phpmyadmin中拿

select * from A as a,B as b where a.haoma = b.haoma

測試的時候就已經跑死掉了。哪位大蝦協助寫一下這個sql

分享到:


------解決方案--------------------
haoma 是主鍵麼,如果不是的話建立索引試試。
------解決方案--------------------
select * from A as a,B as b where a.haoma = b.haoma
只要在 haoma 上都建有索引,查詢只是瞬間的事情
但是輸出可是要很花一些時間的!
你把100萬條記錄都列印出來嗎?顯然是腦袋有毛病了
------解決方案--------------------
直接
insert into c(......)
select ecs_ershi.* ,ecs_erjiu.set
from ecs_ershi inner join ecs_erjiu on ecs_ershi.haoma=ecs_erjiu.haoma
limit 0,29
即可,

不要輸出。。。
------解決方案--------------------
引用:
select * from A as a,B as b where a.haoma = b.haoma
只要在 haoma 上都建有索引,查詢只是瞬間的事情
但是輸出可是要很花一些時間的!
你把100萬條記錄都列印出來嗎?顯然是腦袋有毛病了

膜拜大神,我是來拿分的。
------解決方案--------------------
這個應該體現出來索引的作用了。查詢上百萬條的記錄很慢了。
------解決方案--------------------
1.上面說的,建立有效索引
2.如果資料量以後還會增加的話建立分表
3.表的結構涉及到字元比較長的獨立出來新表中
4.查詢使用預存程序來實現
------解決方案--------------------
desc select * from A as a,B as b where a.haoma = b.haoma給表加上索引,就很快的,如果有where條件查詢,可以加上全文索引。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.