oracle 实现多字段匹配一个关键字查询语句

oracle 实现多字段匹配一个关键字查询语句:
有两种方法(经测试,10g中不能用,11g才行):

第一种. select * from table where (‘字段名1‘ ||‘字段名2‘ ||...) like "%keyValue%";

第二种:(1)如果是两个字段的话:
select * from table where concat(字段名1,字段名2) like "%keyValue%";
(2)如果是多个字段的话:
select * from table where concat(concat(concat(concat(字段名1,字段名2),字段名3)字段名4)...) like "%keyValue%";

原文地址:https://www.cnblogs.com/remember-forget/p/8485889.html

时间: 2024-08-10 11:51:08

oracle 实现多字段匹配一个关键字查询语句的相关文章

Oracle多关键字查询

因项目需要,在某查询页面的查询字段支持多关键字查询,支持空格隔开查询条件,故实现如下: 使用的原理是:ORACLE中的支持正则表达式的函数REGEXP_LIKE, '|' 指明两项之间的一个选择.例子'^([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串. '+' 匹配前面的子表达式一次或多次. '( )' 标记一个子表达式的开始和结束位置. 如需要查询的关键字为"杆塔 鸟巢" select t.defect_phenomenon, t.defect_code, t

[Elasticsearch] 多字段搜索 (五) - 以字段为中心的查询

以字段为中心的查询(Field-centric Queries) 上述提到的三个问题都来源于most_fields是以字段为中心(Field-centric),而不是以词条为中心(Term-centric):它会查询最多匹配的字段(Most matching fields),而我们真正感兴趣的最匹配的词条(Most matching terms). NOTE best_fields同样是以字段为中心的,因此它也存在相似的问题. 首先我们来看看为什么存在这些问题,以及如何解决它们. 问题1:在多个

[Elasticsearch] 多字段搜索 (三) - multi_match查询和多数字段

multi_match查询 multi_match查询提供了一个简便的方法用来对多个字段执行相同的查询. NOTE 存在几种类型的multi_match查询,其中的3种正好和在"了解你的数据"一节中提到的几种类型相同:best_fields,most_fields以及cross_fields. 默认情况下,该查询以best_fields类型执行,它会为每个字段生成一个match查询,然后将这些查询包含在一个dis_max查询中.下面的dis_max查询: { "dis_max

45个非常有用的 Oracle 查询语句小结

 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧. 原文地址:http://www.jbxue.com/db/19890.html 日期/时间 相关查询 1.获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 "SYSDATE"来指定查询的日期. 复制代码代码如下: SELECT TRUNC

45 个非常有用的 Oracle 查询语句

这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧! 日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 "SYSDATE"来指定查询的日期. ? 1 2 SELECT TRUNC (SYSDATE, 'MONTH') "First day of current mo

45 个非常有用的 Oracle 日期查询语句

日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 "SYSDATE"来指定查询的日期. SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month"      FROM DUAL; 获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任何的日期值替换 "

45个非常有用的Oracle查询语句(转自开源中国社区)

日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 "SYSDATE"来指定查询的日期. SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month" FROM DUAL; 获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任何的日期值替换 "SYSDA

这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询。这些是所有 Oracle 开发者都必备的技能,所以快快收藏吧!

日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 “SYSDATE”来指定查询的日期. SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month"      FROM DUAL; 获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任何的日期值替换 “SYSDATE”来指定查询的日

【转】45 个非常有用的 Oracle 查询语句

日期/时间 相关查询 获取当前月份的第一天 运行这个命令能快速返回当前月份的第一天.你可以用任何的日期值替换 “SYSDATE”来指定查询的日期. ? 1 2 SELECT TRUNC (SYSDATE, 'MONTH') "First day of current month"     FROM DUAL; 获取当前月份的最后一天 这个查询语句类似于上面那个语句,而且充分照顾到了闰年,所以当二月份有 29 号,那么就会返回 29/2 .你可以用任何的日期值替换 “SYSDATE”来指