在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些"很像…"的数据记录,以下是可使用的通配符:
%零或者多个字符
_单一任何字符(下划线)
\特殊字符
[]在某一范围内的字符,如[0-9]或者[aeth]
[^]不在某范围内的字符,如[^0-9]或者[^aeth]
其中关于条件,SQL提供了四种匹配模式:
1.%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。
比如SELECT * FROM [user] WHERE u_name LIKE '%三%'
将会把u_name为"张三","张猫三"、"三脚猫","唐三藏"等等有"三"的记录全找出来。
另外,如果需要找出u_name中既有"三"又有"猫"的记录,请使用and条件
SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'
若使用SELECT * FROM [user] WHERE u_name LIKE '%三%猫%'
虽然能搜索出"三脚猫",但不能搜索出符合条件的"张猫三".
2._: 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:
比如SELECT * FROM [user] WHERE u_name LIKE '_三_'
只找出"唐三藏"这样u_name为三个字且中间一个字是"三"的;
再比如SELECT * FROM [user] WHERE u_name LIKE '三__';
只找出"三脚猫"这样name为三个字且第一个字是"三"的;
3.[ ]:表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。
比如SELECT * FROM [user] WHERE u_name LIKE '[张李王]三'
将找出"张三"、"李三"、"王三"(而不是"张李王三");
如[ ] 内有一系列字符(01234、abcde之类的)则可略写为"0-4"、"a-e"
SELECT * FROM [user] WHERE u_name LIKE '老[1-9]'
将找出"老1"、"老2"、……、"老9";
4.[^ ] :表示不在括号所列之内的单个字符。其取值和[] 相同,但它要求所匹配对象为指定字符以外的任一个字符。
比如SELECT * FROM [user] WHERE u_name LIKE '[^张李王]三'
将找出不姓"张"、"李"、"王"的"赵三"、"孙三"等;
SELECT * FROM [user] WHERE u_name LIKE '老[^1-4]';
将排除"老1"到"老4",寻找"老5"、"老6"、……
分享到:
相关推荐
oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像…”的数据记录,以下是可使用的通配符: % 零或者多个字符 _ 单一任何字符(下划线) \ 特殊字符 oracle...
Oracle SQL中的模糊查询是一种强大的数据检索工具,它允许用户使用通配符来查找不完全匹配特定模式的数据。通配符`LIKE`是这种查询的核心,它在`WHERE`子句中用于筛选满足特定模式的记录。本文将深入讲解`LIKE`...
总的来说,Java和Oracle结合进行模糊查询涉及到了JDBC连接、SQL的`LIKE`操作符、PreparedStatement的使用以及JSP的前端交互。理解和熟练掌握这些技术,对于开发高效、安全的Web应用程序至关重要。
在实际应用中,根据所使用的数据库系统(如MySQL、SQL Server、Oracle等),SQL语法和连接方式可能会有所不同,但基本的查询逻辑和通配符的使用是一致的。记得在使用完毕后,始终关闭数据库连接,以释放资源并保持...
Oracle SQL 优化 Oracle SQL 优化是数据库性能优化的关键部分。为了提高数据库的性能,我们需要从五个方面进行调整:去掉不必要的大型表的全表扫描、缓存小型表的全表扫描、检验优化索引的使用、检验优化的连接技术...
### Oracle SQL优化实例详解 #### 一、减少I/O操作 在Oracle数据库中,I/O操作通常是查询执行...通过以上实例可以看出,合理使用索引、优化查询结构、调整查询顺序等方法可以在很大程度上提高Oracle SQL查询的性能。
在Oracle SQL中,通配符主要用于`LIKE`操作符中,用于模糊查询。常见的通配符包括`%`、`_`等。此外,还有一些特殊的字符,如`#`、`[`、`]`等,它们虽然不是严格意义上的通配符,但在特定场景下可以起到类似的作用。 ...
根据提供的文档信息,本文将对《ORACLE SQL 语句(典型应用总结)》中的关键知识点进行详细解读与总结。 ### 第一章 基本SELECT语句 #### 1. SQL语法要求 在Oracle中编写SQL语句时,需要注意以下几点: - **大小写...
在SQL(结构化查询语言)中,通配符是一种强大的工具,用于在查询时匹配不完全确定的数据。它们允许用户模糊搜索,这对于数据挖掘、数据分析和日志查询等任务非常有用。下面我们将深入探讨SQL中的两种主要通配符:百...
首先,`LIKE`操作符是SQL标准中用于模糊匹配的工具,它使用通配符 `%` 来表示任意数量的字符。例如,`title LIKE '%手册%'` 将找到所有标题中包含"手册"的记录。然而,由于`LIKE`在处理`%`通配符时需要进行全表扫描...
LIKE操作符提供强大的模糊匹配能力,但其效率受通配符位置的影响。以'%'开头的LIKE查询通常无法利用索引,而以固定字符开头的LIKE查询(如'X%')则能有效利用索引。 **推荐方案**:尽可能将固定字符放在LIKE模式的...
3. **INSTR函数**:在某些数据库系统(如Oracle),`INSTR`函数可以用来检查字符串中是否包含特定子串,虽然这不是标准SQL的一部分,但在某些模糊查询场景中也十分有用。 4. **DELPHI中的ADO或DAO组件**:在DELPHI...
在Oracle数据库中,SQL语句的执行顺序对查询性能有着显著的影响。对于基于规则的优化器而言,FROM子句中表的顺序至关重要。Oracle的解析器会按照从右至左的顺序处理FROM子句中的表名,因此,位于FROM子句最右侧的表...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其SQL(结构化查询语言)在数据管理、分析和应用开发中扮演着核心角色。本篇将基于"Oracle常用SQL语句复习"这一主题,深入探讨Oracle SQL的基本语法和常用...
在SQL查询语言中,`LIKE`是一个非常实用的功能,它允许我们在查询时使用通配符来匹配字符串模式。这在处理大量数据时特别有用,可以帮助我们快速定位到满足特定模式的数据行。下面我们将详细介绍`LIKE`语句的基本...
在Oracle数据库中,通配符主要用于模糊查询,即通过模式匹配来检索符合特定条件的记录。主要通配符及其用途如下: ##### 1. **% (百分号)** - **定义**:表示零个、一个或多个字符。 - **示例**: - `SELECT * ...
Oracle SQL是用于访问和操作Oracle数据库的强大工具,涵盖了各种查询、更新和管理数据的方法。以下是对笔记中提及的一些关键知识点的详细解释: 1. **登录Oracle数据库**:通常以超级管理员(sysdba)身份登录,如`...
在Oracle数据库中,LIKE操作符是用于模糊查询的关键字之一。它允许用户通过模式匹配的方式检索数据,从而增加了查询的灵活性。然而,这种灵活性也带来了性能上的挑战,尤其是在处理大规模数据集时。因此,了解如何...
使用带有前导通配符(如`'%abc%'`)的LIKE语句会使得Oracle无法使用索引进行快速定位,导致全表扫描,严重降低查询效率。应尽量避免使用前导通配符,或考虑建立适当的索引以支持此类查询。 ##### 2.4 ORDER BY语句 ...