/**

* 工具-字符串-转换Sql查询IN中使用的格式

* 效果:a,b==>'a','b'

* @param str

* @return

*/

public String strToDbin(String str){

return String.format("'%s'", StringUtils.join(str.split(","),"','"));

}

/**

* 工具-字符串-转换为Sql查询分组IN格式

* 解决:Sql中in超过1000个报错问题

* @param field 列名,例如:ID

* @param strIns 待拆分的字符串 a,b,c

* @return field in('a') and field in('b') and field in('c')

*/

public String strToSqlGroupIn(String field,String strIns) {

int groupNum = 1;

String groupInArr = new String();

StringBuffer buffer=new StringBuffer();

if(StringUtils.isNoneBlank(strIns)){

String[] array=strIns.split(",");

//数组总长度

int len=array.length;

//分组数

int groupCount=len/groupNum;

for(int k=0;kk*groupNum){

groupInArr+=",";

}

groupInArr+=array[i].trim();

}

if(k>0){

buffer.append(" and ");

}

buffer.append(String.format(" %s in(%s)",field,strToDbin(groupInArr)));

}

if(len%groupNum != 0){

//未整除

groupInArr=new String();

//处理最后一组数据

for(int j=(groupCount*groupNum);jgroupCount*groupNum){

groupInArr+=",";

}

groupInArr+=array[j].trim();

}

if(buffer.length()>0){

buffer.append(" and ");

}

buffer.append(String.format(" %s in(%s)",field,strToDbin(groupInArr)));

}

}

return buffer.toString();

}

文章来源: blog.51cto.com,作者:沫沫金,版权归原作者所有,如需转载,请联系作者。

原文链接:https://blog.51cto.com/zl0828/2507761

java中sql 语句格式转换_Java字符串转Sql语句In格式工具方法相关推荐

  1. java中如何将数字转换成字符串(int转换为string)

    String s = "123"; int n= 12; 方法一:通过包装类来实现String ss = String.valueOf(n); 方法二:直接通过空字符串+数字的形式 ...

  2. java 千分位格式话_Java 字符串小数转成千分位格式

    java中需要将字符串小数转成千分位格式显示,如下代码,原理是使用正则表达式对整数位进行千分位格式化,然后小数位拼接起来.为什么要这么麻烦的处理,是因为在android程序中使用的NumberForm ...

  3. sql 纵向求和_SQL语句(行列转换以及字符串求和)

    create table tempAB(A varchar(10),B varchar(10)) insert into tempAB values('a1','b1') insert into te ...

  4. 时间日期格式转换_JAVA

    Description 对于日期的常用格式,在中国常采用格式的是"年年年年/月月/日日"或写为英语缩略表示的"yyyy/mm/dd",此次编程竞赛的启动日期&q ...

  5. java中日历类的用法_java日期类的用法

    java日期类的用法 不管你是处理财务交易还是计划着下一步的行动,你都要知道怎样在Java中建立,使用和显示日期.这需要你简单的查阅一下相应类的API参考:一个日期可以创建3个相关类的对象.这篇文章告 ...

  6. java里的进制转换函数_基于Java中进制的转换函数详解

    十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...

  7. JAVA中如何将大数字或字符串放进数组

    JAVA中如何将大数字或字符串放进数组 在JAVA学习过程中字符串.数组.数字之间的 的转换经常用到,记录一些非常基础的转换. 1.将数字转换为字符串:String str = String.valu ...

  8. Java中的dozer对象转换

    Java中的dozer对象转换 1.dozer介绍 Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象. dozer是用来对两个对象之间属性转换的工 ...

  9. java 实体属性个数_?Java中比较实用实体转换工具介绍

    ​Java中比较实用实体转换工具介绍 文中源码地址 大家一般编码过程中,经常会遇到DO对象转化为DTO对象,对象和对象之间转换一般需要用到转换工具,毕竟使用getter/setter太过麻烦 DO:D ...

最新文章

  1. Asp.Net web.config配置节点大全详解
  2. 涨知识!外贸中,船公司S/O(订舱单)文件英文解释!
  3. 游戏开发中 UI 是由谁来完成的?
  4. Blazor WebAssembly 应用程序中进行 HTTP 请求
  5. 如何解决NLP分类任务的11个关键问题:类别不平衡低耗时计算小样本鲁棒性测试检验长文本分类 JayLou娄杰
  6. python连连看小游戏_python递归法实现简易连连看小游戏
  7. 用微型“缝纫机”把芯片无痛“打”进大脑,Elon Musk的脑机帝国拉开序幕!|湾区人工智能...
  8. php的socket,PHP Socket范例
  9. 8天玩转并行开发——第六天 异步编程模型
  10. Python新手需要掌握的知识点
  11. vue+IOS9页面白屏
  12. 西安电子科技大学计算机应用,西安电子科技大学计算机应用技术考研
  13. 什么是OEM、ODM、OBM
  14. mysql数据库设计教材_mySQL教程 第1章 数据库设计
  15. 浅谈Unity中的文字显示
  16. 【求职】作业帮 Java 方向面经
  17. 你真的知道面向过程和面向对象的区别吗?
  18. 《宣龙教育》加密网课视频下载
  19. 大数据面试之Hive常见题目
  20. 固定系数与自适应结合的主动降噪耳机设计实验

热门文章

  1. java实现linux中gzip压缩解压缩算法:byte[]字节数组,文件,字符串,数据流的压缩解压缩
  2. c++实现Matlab矩阵Matrix类(实矩阵Matrix、复矩阵CMatrix)
  3. LaTex建立参考文献链接
  4. 五分钟快速过完Verilog HDL基本概念(1)
  5. ajax获取checkbox循环出来的值_Django:前后端异步加载数据(循环大法)
  6. 【JDK】JDK源码分析-CountDownLatch
  7. [BZOJ4484][JSOI2015]最小表示(拓扑排序+bitset)
  8. 【前端】h5音乐播放demo 可关闭可播放
  9. jupyter的常用操作——Python学习(二)
  10. [转载] dataframe中有关inf的处理技巧