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 中,可以使用 "||" 进行字符串连接,这是一种非常方便的字符串操作方式。 二、快速删除大批量数据 在删除大量数据时,使用 delete 语句可能会非常慢,因为删除数据时需要记录数据库日志。为了提高删除速度...
- **Decimal/Double/Integer/Smallint/Real**: 这些数据类型在DB2和Oracle中都可以直接使用,无需特别的转换函数。 - **Hex**: DB2提供`HEX`函数来将二进制数据转换为十六进制格式。 - **Date/Time/Timestamp**: ...
本文将详细介绍DB2 SQL数据库中的常用函数及其使用方法。 #### 二、数学函数 1. **ABS(exp)**: 返回表达式`exp`的绝对值。 - 示例:`ABS(-10)` 返回 `10`。 2. **ABSVAL(exp)**: 功能与ABS相同,返回表达式的...
根据提供的文件信息,本文将对SQL Server、Oracle与DB2三种主流关系型数据库管理系统中的SQL语句进行详细的对比分析。这不仅有助于理解不同数据库系统之间的差异,也为开发人员提供了跨平台迁移时所需的必要知识。 ...
38. **LOCATE**: 在字符串中定位子串的位置。 以上列出的DB2函数提供了丰富的功能,可以帮助用户执行各种数据处理任务,无论是简单的数值操作还是复杂的统计分析。熟练掌握这些函数能够极大地提高SQL查询的效率和...
DB2 是一款强大的关系型数据库管理系统,其内置的函数库为数据处理提供了丰富的功能。本文主要探讨了DB2中的一些常用字符串处理函数,包括它们的语法、...掌握这些函数的用法对于DB2数据库的日常维护和开发至关重要。
Oracle中的LIKE操作符在处理字符串匹配时非常常见,但在DB2中,使用LOCATE函数更为合适。在Oracle中,`LIKE`可以结合通配符进行模式匹配,例如`LIKE '%value%'`。但在DB2中,要实现相同功能,可以使用`LOCATE('...
在DB2中,可以通过`LOCATE`函数来查找一个字符或子字符串在另一个字符串中的位置。例如: ```sql SELECT LOCATE('y', 'dfdasfay'); ``` 这将会返回数字`7`,表示字符`y`在字符串`dfdasfay`中的位置。 #### 五、...
在C++代码部分,可以看到一个名为`proc`的类,该类继承自`Db2Tools`,并且有一个`busiLogic`方法,其中使用了嵌入式SQL(EXEC SQL)来声明变量和定义SQL语句。这里虽然没有展示具体的SQL语句,但可以看出,`...