<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-57  評論-117  文章-1  trackbacks-0

    處理oracle sql 語句in子句中(where id in (1, 2, ..., 1000, 1001)),如果子句中超過1000項就會報錯。
    這主要是oracle考慮性能問題做的限制。如果要解決次問題,可以用 where id (1, 2, ..., 1000) or id (1001, ...)

    /**
     * <b>function:</b> 處理oracle sql 語句in子句中(where id in (1, 2, ..., 1000, 1001)),如果子句中超過1000項就會報錯。
     * 這主要是oracle考慮性能問題做的限制。如果要解決次問題,可以用 where id (1, 2, ..., 1000) or id (1001, ...)
     * @author hoojo
     * @createDate 2012-8-31 下午02:36:03
     * @param ids in語句中的集合對象
     * @param count in語句中出現的條件個數
     * @param field in語句對應的數據庫查詢字段
     * @return 返回 field in (...) or field in (...) 字符串
     */
    private String getOracleSQLIn(List<?> ids, int count, String field) {
        count = Math.min(count, 1000);
        int len = ids.size();
        int size = len % count;
        if (size == 0) {
            size = len / count;
        } else {
            size = (len / count) + 1;
        }
        StringBuilder builder = new StringBuilder();
        for (int i = 0; i < size; i++) {
            int fromIndex = i * count;
            int toIndex = Math.min(fromIndex + count, len);
            //System.out.println(ids.subList(fromIndex, toIndex));
            String productId = StringUtils.defaultIfEmpty(StringUtils.join(ids.subList(fromIndex, toIndex), "','"), "");
            if (i != 0) {
                builder.append(" or ");
            }
            builder.append(field).append(" in ('").append(productId).append("')");
        }
        
        return StringUtils.defaultIfEmpty(builder.toString(), field + " in ('')");
    }


    作者:hoojo
    出處:
    blog:http://blog.csdn.net/IBM_hoojo
             http://hoojo.cnblogs.com
    本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


    版權所有,轉載請注明出處 本文出自:
    分享道版權所有,歡迎轉載,轉載請注明出處,謝謝
    posted on 2012-08-31 14:51 hoojo 閱讀(5005) 評論(0)  編輯  收藏 所屬分類: DataBaseJavaEEJavaSEOracle
    主站蜘蛛池模板: 亚洲国产精品VA在线看黑人 | 亚洲一区二区三区在线观看蜜桃| yellow视频免费看| 免费国产综合视频在线看| 亚洲精品第一国产综合亚AV| 免费看污成人午夜网站| 亚洲人成小说网站色| 成人a视频片在线观看免费| 亚洲色中文字幕在线播放| 在线免费观看中文字幕| 亚洲一卡2卡3卡4卡5卡6卡| 免费看无码自慰一区二区| 国产成人不卡亚洲精品91 | 国产亚洲大尺度无码无码专线| 美女视频黄频a免费大全视频| 亚洲国产日韩成人综合天堂| 亚洲免费视频一区二区三区| 亚洲色中文字幕无码AV| 99久热只有精品视频免费看| 亚洲精品美女久久久久| 女人张开腿等男人桶免费视频| 麻豆亚洲AV成人无码久久精品| 亚洲精品成人区在线观看| 国产自国产自愉自愉免费24区| 亚洲AV美女一区二区三区| 中字幕视频在线永久在线观看免费| 亚洲AV一区二区三区四区| 亚洲精品国产日韩无码AV永久免费网| 国产精品成人69XXX免费视频| 久久亚洲精品中文字幕三区| 免费A级毛片无码A∨免费| 亚洲大码熟女在线观看| 亚洲午夜福利717| 最近最好的中文字幕2019免费| 日韩精品亚洲专区在线影视| 亚洲va无码va在线va天堂| 欧美在线看片A免费观看| 一级毛片一级毛片免费毛片| 久久久久亚洲精品无码蜜桃 | 亚洲人成网站在线观看青青| 亚洲免费二区三区|