• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            java幾千萬行數據做查詢的時候?

            我的數據庫是:mysql
            一張表的數據上了千萬行,而且每天都以10幾萬行在增張。

            目前需要解決的問題,我的頁面在做幾個字段的查詢的時候顯示出來居慢,我用的是java,沒用
            什么框架,直接JDBC查詢。

            大家有什么好方法沒?
            我目前想這樣搞下:寫個存儲過程,JAVA調存儲過程返回的數據集(集合),應該快的多,
            但是mysql可以返回來數據集嗎,java代碼怎么得到?又不太好搞?


            這樣的問題大家應該碰到過,有經驗的朋友們請告訴下,謝謝大家?
            問題補充:
            我的SQL語句里面用了日期函數判斷,在日期上建立索引,會失效嗎?
            比如:......where ((TRUNC(IMMS_REPORT_REALSEND.DATCREATE) >= TRUNC(sysdate))

            采納的答案

            2008-12-15 binlinux (初級程序員)

            最好是拆分表,將歷史數據移走


            提問者對于答案的評價:
            我就這樣做算了.

            其他回答

            可以拆分表~

            czx566 (初級程序員) 2008-12-11

            一次取超過1W行的數據,估計是用INDEX的效果也好不到哪兒去。

            sdh5724 (資深程序員) 2008-12-11

            如果你不要一次看全部數據的話,可以做個類似分頁的東西,這樣結果集的數據不會一次全部返回,每次返回的只是你設定的一頁要顯示的數據條數。

            enetor (初級程序員) 2008-12-11


            建議對在數據庫設計上做些文章。

            比如可以考慮對表進行橫向分割縱向分割

            可以把你的表結構和業務拿出來討論下。

            pangyi (初級程序員) 2008-12-11

            建立索引是唯一辦法

            墓里活人 (資深程序員) 2008-12-11

            樓主是MYSQL

            千萬級別的數據量對mysql就是一個嚴峻的考驗!
            不推薦索引!



            還是推薦分表!

            czx566 (初級程序員) 2008-12-11

            mysql有函數索引么。。。。。
            1000W
            數據, 目前的機器輕松應付的。
            1?!?span lang="EN-US">IMMS_REPORT_REALSEND.DATCREATE
             現建立索引
            2。 TRUNC這么用不對的, 你可以先計算一個 sysdate 當天00:00:00的時間,然后再比較, 這樣就對了。

             

            sdh5724 (資深程序員) 2008-12-11

            to 墓里活人:

              
            從戰術上來說,建立索引是個不錯的辦法。

               
            從戰略上來說,數據分割是明智之舉。

            pangyi (初級程序員) 2008-12-11

            現在我也遇到了這樣的問題,用得方法就是分表,按天日期來分表,每天一張表。不過這樣查詢就有點問題了,正在想辦法解決.........

            qiaoakai (初級程序員) 2008-12-11

            引用

            現在我也遇到了這樣的問題,用得方法就是分表,按天日期來分表,每天一張表。不過這樣查詢就有點問題了,正在想辦法解決.........



            不建議采用時間來分表,一天一張表,維護程序比較復雜。

            建議從業務上做劃分。以電廠的運行數據為例。電廠運行時,有很多測點。測點的數據是以秒為單位產生的。若將這些數據都放到一張表中,一年下來至少有上億條數據。電廠一般至少有20000多個測點。但若給每個測點建立一張數據表,則數據量會分解到20000多張表中,每張表里的數據一年下來也就數十萬而已。從應用的角度,也可以很好的對數據進行分析和管理。

            pangyi (初級程序員) 2008-12-12

            用日期函數的時候不會用到索引

            waterdh (中級程序員) 2008-12-12

            建議分割表

            queue19 (初級程序員) 2008-12-12

            可以每天晚上對數據進行合并,匯總到另外一張或幾張表中,比如日表,月表.

            大力水手 (初級程序員) 2008-12-12

            TOBAO也是用MYSQL   先看看業務允許分表不,如果不允許 那么建議你把時間判斷的給去掉  你取的記錄應該不多,如果多就分次取,在內存里面進行判斷 這樣可能會快點。不要讓INDEX失效。

            fjlyxx (中級程序員) 2008-12-13

            根據查詢條件加index..

             

            posted on 2009-06-09 13:27 肥仔 閱讀(374) 評論(0)  編輯 收藏 引用 所屬分類: 數據庫

            久久久无码精品午夜| 国产欧美久久一区二区| 国内精品久久久久久久coent | 精品国际久久久久999波多野| 久久亚洲精品成人av无码网站| 国产高潮国产高潮久久久| 亚洲一区中文字幕久久| 亚洲中文字幕无码久久2017| 久久99精品国产一区二区三区 | 色8久久人人97超碰香蕉987| 久久伊人精品青青草原高清| 久久精品国产亚洲AV蜜臀色欲| 久久99精品国产99久久6男男| 久久伊人五月丁香狠狠色| 精品欧美一区二区三区久久久| 亚洲愉拍99热成人精品热久久| 久久露脸国产精品| 久久中文娱乐网| 国产婷婷成人久久Av免费高清| 少妇被又大又粗又爽毛片久久黑人| 青青青国产精品国产精品久久久久| 久久国产欧美日韩精品| 国产午夜电影久久| 久久久久亚洲精品日久生情| 久久91综合国产91久久精品| 中文字幕人妻色偷偷久久| 久久综合精品国产一区二区三区| 国产精品久久久久久搜索| 久久久国产打桩机| 久久亚洲AV无码精品色午夜麻豆| 人人狠狠综合久久亚洲婷婷| 久久综合亚洲欧美成人| 欧美激情一区二区久久久| 中文字幕无码久久精品青草| 久久无码人妻精品一区二区三区 | 老色鬼久久亚洲AV综合| 无码国内精品久久综合88| 亚洲美日韩Av中文字幕无码久久久妻妇| 色综合久久中文色婷婷| 国产成人精品久久综合| 久久精品成人免费观看97|