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();
}
}
分享到:
相关推荐
DB2常用函数详解,包括进200个常用函数,很详细
linux中locate命令使用介绍.docx
DB2 SQL 通过函数(CONCAT/POSSTR/LOCATE)实现行转列,列转行 可以按照标点把多列转换为一行,多行转换为一列
group_concatenate与locate的联合用法示例 group_concatenate与locate的联合用法示例
字符串的查找是数据库应用中必不可少的操作,而且每种数据库产品(ORACLE、DB2、SYBASE、MS SQL SERVER、MYSQL等等)也都提供了对应的字符串处理函数,比如DB2的LOCATE函数。 但在实际的工作中,还是会遇到一些特殊...
which,whereis,locate,find的用法与区别
-d或–database= 配置locate指令使用的数据库。locate指令预设的数据库位于/var/lib/slocate目录里,文档名为slocate.db,您可使用 这个参数另行指定。 –help 在线帮助。 –version 显示版本信息。 实例
汉化过的增强搜索软件locate32 汉化过的增强搜索软件locate32
Locate32是一款极品磁盘文件搜索工具,让你更快更详细的搜索到你想要的文件!
Can't locate ThreadQueue.pm
不常用:MySQL中的LOCATE和POSITION函数
locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动...
Locate32 v3.1 RC3l build 10.8220(包含中文语言文件,需在设置中选择) 小巧的本地搜索,Locate32根据存储在数据库中的文件和文件夹名称查找文件和目录
可以让你快速地找到目标文件的搜索工具。通过使用数据库技术把文件(可指定任意硬盘、目录及其他存放媒体上的文件)的相关资料保存起来后,在搜索时直接搜索数据库记录达到即搜即有的效果
在执行 perl Makefile.PL 报错如下,简单记录一下解决方法 # perl Makefile.PL Can’t locate ExtUtils/MakeMaker.pm in @INC (@INC contains: inc /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl...
在打开vivado工程时总是报错Cannot locate target loader(重新安装vivado没有用)。一个方法是先打开vivado,再在vivado中打开工程。
在windows环境下的eclipse或者idea中编写spark应用时,有时为了验证程序功能需要以本地模式运行测试。常常会遇到如下的异常: java.io.Exception: Could not locate executable null\bin\winutils.exe in the Hadoop...
每当在链表上进行一次Locate(L,x)操作时,令元素值为x的结点的访问频度freg加1,并将该结点前移,链接到与它的访问频度相等的结点后面,使得链表中所有结点保持按访问频度递减的顺序排列,以使频繁访问的结点总是...
Locate32 是一款用于帮助你从你的硬盘或者其他位置查找文件的程序.体积小,好用的话,请支持原作者.
你是否觉得在window上搜一个文件太麻烦,一个盘一个盘搜,慢得想打人。 Locate32纯绿色软件,即下即用。让你体会闪电般的快速搜索。下载后,按F9,更新本地数据库索引后就能使用了。