`
- 浏览:
118124 次
- 性别:
- 来自:
北京
-
今天遇到个问题.判断表中某一字段的值是否包含在一传入的变量中,或者某一字段值是不是包含指定的字符串,如果字段的值包含在变量中则返回结果.
测试如下:
程序会产生一个变量,判断字段"A" 是否包含在 "此变量"中
如果字段"A"的值包含在 "变量"中,则返回NAME值.
在此用到内置函数INSTR(CHAR1,CHAR2,m,n)
SQL> desc tmp_Test
Name Null? Type
------- -------- -------------
A VARCHAR2(20)
NAME VARCHAR2(20)
SQL> select * from tmp_test;
A NAME
------- -------
1 test1
2 test2
处理方法:
SQL> select name from tmp_test where instr('变量',a)>0;
例:
1.变量包含'1'而不包含'2'时:
SQL> select name from tmp_Test where instr('135',a)>0;
NAME
--------------------
test1
2.变量既包含'1' 又包含'2'时:
SQL> select name from tmp_Test where instr('1235',a)>0;
NAME
--------------------
test1
test2
3.变量既不包含'1'也不包含'2':
SQL> select name from tmp_Test where instr('35',a)>0;
no rows selected
INSTR(CHAR1,CHAR2,m,n)
求CHAR2在CHAR1中从m位置起第n次出现的位置. m,n缺省值都为1,
m>0时,表示从CHAR1左面--->右正向搜索
m<0时,表示从CHAR1右面--->左反向搜索
n,表示第几次出现
注意比较几次结果:
SQL> select instr('asfd9asfdksaf','fd',1,1) as result from dual;
RESULT
-------------
3
SQL> select instr('asfd9asfdksaf','fd',2,1) as result from dual;
RESULT
-------------
3
SQL> select instr('asfd9asfdksaf','fd',9,1) as result from dual;
RESULT
-------------
0
SQL> select instr('asfd9asfdksaf','fd',1,2) as result from dual;
RESULT
----------
8[/size]
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其强大的功能和灵活性使得它在企业级应用中占据了重要地位。本文将围绕“Oracle中文电子书”这一主题,深入探讨Oracle数据库的关键知识点,尤其是书中涉及的...
删除环境变量中的PATHT CLASSPATH中包含Oracle的值。 删除“开始”/“程序”中所有Oracle的组和图标。 删除所有与Oracle相关的目录,包括: C:\Program file\Oracle目录。 ORACLE_BASE目录。 C:\Documents ...
给定的代码片段展示了如何在Oracle数据库中创建一个名为`ZLSPELLCODE`的函数,用于获取汉字字符串的拼音简码。该函数接受两个参数:`v_InstrInVarchar2`表示输入的汉字字符串,`v_OutNumInInteger`则是一个可选参数...
- **含义**:表示任意长度的字符串,包括零长度。 - **示例**: - `SELECT * FROM table_name WHERE column_name LIKE '%abc%'`:查找所有包含“abc”的记录。 - `SELECT * FROM table_name WHERE column_name ...
MySQL 日期字段分 DATE 和 TIME 两种,Oracle 日期字段只有 DATE,包含年月日时分秒信息,用当前数据库的系统时间为 SYSDATE,精确到秒,或者用字符串转换成日期型函数 TO_DATE(‘2001-08-01’,’YYYY-MM-DD’)年-月...
在Oracle数据库中,处理字符串的函数非常丰富,如`SUBSTR()`, `INSTR()`, `UPPER()`, `LOWER()`等。`SUBSTR()`用于提取字符串的一部分,`INSTR()`用于查找子字符串在主字符串中的位置,而`UPPER()`和`LOWER()`则分别...
- WHERE子句中的条件判断,Oracle通常使用代替,并且在处理日期和字符串时,可能需要调整比较运算符和格式。 5. **异常处理**: - Oracle鼓励在每个程序块中包含异常处理机制,以确保错误能够被准确捕获和处理。...
在SQL中,字符串和日期值需要使用单引号括起来。 去重操作通过`DISTINCT`关键字实现,可以去除查询结果中的重复项。而排序操作则使用`ORDER BY`语句,可以对一个或多个字段进行升序或降序排列,注意在Oracle中,`...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其强大的功能和灵活性在企业级应用中备受推崇。本资源“ORACLE函数大全CHM”显然是一个针对Oracle数据库中的各种函数的参考手册,旨在帮助开发者和DBA深入...
2. **字符串函数**:如 `CONCAT()`, `LEFT()`, `RIGHT()`, `REPLACE()`,用于处理字符串数据。 3. **日期/时间函数**:如 `NOW()`, `DATE_ADD()`, `TIMESTAMPDIFF()`,帮助处理日期和时间信息。 4. **聚合函数**:如...
Oracle提供了大量的内置函数,涵盖了数值、字符串、日期时间、逻辑等各种类型的操作。文档中可能列举了这些函数的用途、语法和示例,帮助用户快速查找和理解。 4. **rank()函数**: RANK()函数用于对查询结果进行...
- **SUBSTR函数**:用于从字符串中提取子串。 - **LPAD/RPAD函数**:用于在字符串左侧或右侧填充指定字符。 - **日期函数**:如 SYSDATE 和 ADD_MONTHS 等,用于日期时间的计算和转换。 - **随机取前10条不同的记录*...
Oracle数据库中包含大量的内置函数,涵盖数值、字符串、日期、集合、系统等各类操作: 1. 数值函数:如ROUND、TRUNC、MOD等用于数值处理。 2. 字符串函数:如SUBSTR、INSTR、UPPER/LOWER、CONCAT等处理字符数据。 3...
Oracle数据库是一类关系型数据库管理系统(RDBMS),由美国Oracle公司开发。Oracle数据库系统以其高度的可靠性、安全性、开放性和可移植性而著称,广泛应用于金融、电信、交通、制造等领域的业务系统中。在学习...
日期查询时,必须将字符串转换为日期格式,如`SELECT * FROM TM_CONFIG_SERIAL_NUM WHERE DELETE_tag !=1 AND update_time > to_date('2016/11/18 9:00:00','yyyy-mm-dd hh24:mi:ss') ORDER BY update_time DESC`。...
- ORACLE 允许在 WHERE 子句中进行弱类型判断,如字符串与整型之间的比较。DB2 不支持这种行为,要求数据类型一致,否则会导致错误。在 DB2 中,若需要将字符串与整型比较,必须先进行显式的数据类型转换。 3. **`...
- 包括TO_CHAR(将数字或日期转换为字符串)、TO_NUMBER(将字符串转换为数字)等。 - **3.13 条件表达式** - CASE表达式用于实现多分支条件判断,而DECODE函数则类似于IF-THEN语句。 #### 四、从多表中查询数据 ...
- 常用函数包括:数学函数(如ABS、MOD)、字符串函数(如CONCAT、SUBSTR)、日期函数(如SYSDATE、MONTHS_BETWEEN)等。 - **本章总结** - 探讨了子查询的用法以及Oracle中的一些特殊特性,如伪列和内置函数。 ...