<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 閱讀(4994) 評論(0)  編輯  收藏 所屬分類: DataBaseJavaEEJavaSEOracle
    主站蜘蛛池模板: 日韩在线看片免费人成视频播放| 亚洲精品国产福利一二区| 亚洲人成网站在线在线观看| 四虎在线播放免费永久视频 | 中文字幕在线观看亚洲| 久久电影网午夜鲁丝片免费| a一级毛片免费高清在线| 亚洲欧洲高清有无| 亚洲精品乱码久久久久久蜜桃| 十九岁在线观看免费完整版电影| 亚洲欧洲免费无码| 亚洲国产精品无码一线岛国| 在线成人a毛片免费播放 | 91高清免费国产自产拍2021| 国产亚洲欧美在线观看| 午夜影视日本亚洲欧洲精品一区| 性盈盈影院免费视频观看在线一区| 国产福利电影一区二区三区,免费久久久久久久精 | 波多野结衣免费一区视频 | 国产亚洲真人做受在线观看| 卡1卡2卡3卡4卡5免费视频| 黄色网站软件app在线观看免费 | 亚洲色大18成人网站WWW在线播放| 国产AV无码专区亚洲AV手机麻豆 | 8x网站免费入口在线观看| 特级毛片全部免费播放| 亚洲国产高清视频在线观看| 国产午夜亚洲精品理论片不卡| 成人免费视频网址| 在线美女免费观看网站h| av成人免费电影| 亚洲欧美日韩中文二区| 亚洲av无码国产精品色午夜字幕 | 久久久久久久综合日本亚洲| 又黄又大又爽免费视频| 丁香花免费高清视频完整版| 国产精品免费大片| 2022国内精品免费福利视频| 久久精品国产亚洲av瑜伽| 亚洲一级特黄特黄的大片 | 免费无码又爽又刺激网站|