`

postgresql实现模糊查询 正则表达式

 
阅读更多

因为数据库的查询操作比较单一,所以大部分的模糊查询操作都需要手动编写程序来实现。

postgresql提供有强大的正则表达式系统,可以在数据库级别实现模糊查询。

正则表达式匹配操作符:

操作符 描述 例子
~ 匹配正则表达式,大小写相关 'thomas' ~ '.*thomas.*'
~* 匹配正则表达式,大小写无关 'thomas' ~* '.*Thomas.*'
!~ 不匹配正则表达式,大小写相关 'thomas' !~ '.*Thomas.*'
!~* 不匹配正则表达式,大小写无关 'thomas' !~* '.*vadim.*'


例如:

找出数据表account中所有用户名包含baidu且不区分大小写的用户的信息。

select * from account where username ~* 'baidu';

使用正则表达式之后可以实现不区分大小写的功能,并且大大减少了sql语句的长度。

分享到:
评论

相关推荐

    数据库实现 模糊版 jjkodada

    更高级的模糊匹配方法包括正则表达式和全文搜索,它们能提供更复杂的模式匹配和语义理解。 在jjkodada项目中,模糊版数据库实现可能意味着开发团队针对特定需求优化了模糊查询性能,或者他们可能构建了一个专门处理...

    C# 模糊查询

    除了`LIKE`之外,SQL还提供了其他模糊查询的方式,如`BETWEEN`(用于范围查询)、`IN`(用于指定一组可能的值)以及正则表达式(取决于特定的数据库系统,如MySQL、PostgreSQL等)。然而,这些在C#中通常需要结合...

    藏经阁-2016年云栖大会PostgreSQL专场技术-yqdh_58086c479c7...1508943621.pdf

    4. 正则表达式索引:PostgreSQL支持对正则表达式进行索引,这意味着用户可以直接在查询中使用正则表达式进行快速匹配,极大地提升了复杂查询性能。 5. 定制存储管理器与通用WAL(Write-Ahead Log):PostgreSQL允许...

    sql正宗模糊查询(仿百度)关键字密度排序查询,不一定要词组匹配

    总结起来,通过结合使用SQL的模糊查询、关键字密度计算以及正则表达式的部分匹配功能,我们可以构建一个类似于百度的查询系统,提供基于关键字密度排序的搜索结果。这种技术在数据挖掘、信息检索和提高用户体验方面...

    SQL高级实例-模糊查询-分组随机查询-转换

    例如,`LIKE '%abc%'`将找到包含"abc"的所有字符串,而`REGEXP`则支持正则表达式匹配,提供了更复杂的模式匹配功能。在日常工作中,模糊查询常用于搜索用户输入的关键词、处理不完整或拼写错误的数据等场景。 其次...

    Actividad-3 --- Ejercicios-SQL-Consultas-con-busqueda-de-correspondencia-de-patrones-

    SQL标准支持正则表达式,但具体实现取决于所用的SQL数据库系统(如MySQL、PostgreSQL、Oracle等)。用户需要掌握基本的正则表达式语法,如`.`(匹配任何字符)、`^`(开始)、`$`(结束)、`*`(重复零次或多次)、`...

    python项目基于模板的药品名称识别系统.zip

    3. **模式匹配**:利用正则表达式或其他模式匹配算法来识别输入文本中的药品名称。 4. **模糊匹配与验证**:当直接匹配无法找到精确结果时,采用模糊匹配算法来找出最接近的候选名称,并通过额外的规则或词典进行...

    关于派遣地址标准化名称以及地址.rar

    - 正则表达式(Regex):用于匹配和提取地址中的关键信息。 - 位置服务API:如Google Maps API、OpenStreetMap等,提供地址验证和地理编码功能。 - 数据库:存储标准化后的地址,例如PostGIS扩展的PostgreSQL...

    functions_core:搜索软件的核心功能

    2. **正则表达式**:在高级搜索需求中,正则表达式(preg系列函数)能够帮助我们实现更复杂的匹配规则,例如模糊搜索、精确匹配或排除某些关键词。 3. **数据库交互**:PHP通常与MySQL、PostgreSQL等数据库系统配合...

    Library-Management-system

    3. 图书检索:在Python中,可以使用正则表达式和字符串处理函数实现关键词搜索。对于更复杂的模糊匹配和全文搜索,可以引入全文搜索引擎如Elasticsearch,或者使用NLP(自然语言处理)技术进行语义分析。 4. 借阅...

Global site tag (gtag.js) - Google Analytics