`

DB2中locate用法

    博客分类:
  • java
 
阅读更多
package com.unisure.hrss.ldjc.test;
public class Main {

    /**
     * 检查字符串是否包含某个字符串
     */
    public void checkStringContains() {

        String needle1 = "6;,9;,10;;";
        String needle2 = "7";
        String haystack = ";";

        int index1 = needle1.indexOf(haystack);
        int index2 = needle2.indexOf(haystack);

        //getSql(needle1, haystack, index1);
        System.out.println(getSql(needle1, haystack, "ldsq"));
        System.out.println(getSql(needle2, haystack, "ygsq"));
    }
       

    /**
* @param needle 待输入的字符串
* @param mode 待分隔的字符串
* @param index1 待验证的index
* @param colName 待比较的字段名称
* @return
*/
private String getSql(String needle, String mode, String colName) {
StringBuffer sql = new StringBuffer();
int index = needle.indexOf(mode);
if (index != -1){
            String[] arry = needle.split(",");
            for (int i=0;i<arry.length;i++) {
            if(i==0){
            sql.append(" and (locate('").append(arry[i]);
            }else if(i!=0){
            sql.append(" or locate('").append(arry[i]);
            }
           
sql.append("',").append(colName).append(")>0");
}
           
   if(arry.length>0) sql.append(") ");
       return sql.toString();
} else{
      sql.append(" and ").append(colName).append(" like '%").append(needle).append(";%'");
     }
   return sql.toString();
}

    /**
     * Starts the program
     *
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        new Main().checkStringContains();
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics