Sql 如何筛选相似的列值
我需要帮助从一个名为TEST的Oracle表中提取数据,该表包含以下数据:Sql 如何筛选相似的列值,sql,oracle,sql-like,Sql,Oracle,Sql Like,我需要帮助从一个名为TEST的Oracle表中提取数据,该表包含以下数据: Name Description Alex IExpenses Mary IExpenses Setup and Admin John IExpenses Brett Internet Expenses Auditor Todd Internet Expenses Setup and Admin Jane Internet Expenses
Name Description
Alex IExpenses
Mary IExpenses Setup and Admin
John IExpenses
Brett Internet Expenses Auditor
Todd Internet Expenses Setup and Admin
Jane Internet Expenses Auditor
因此,我只需要选择描述结果不返回IEExpenses(但包括任何带有IEExpenses设置和管理的内容)和不返回Internet Expenses Auditor(但包括任何带有Internet Expenses设置和管理的内容)的数据
如何创建此条件?如果只需要返回与这两种情况类似的结果,请使用
Description LIKE '%Expenses Setup and Admin'
对于WHERE条件
如果区分大小写很重要,则使用
REGEXP_LIKE(Description,'Expenses Setup and Admin','i')
如果这些标识符应该是严格的,那么在操作符中使用
Description IN ('Internet Expenses Setup and Admin','IExpenses Setup and Admin')
此外,如果再次出现大小写敏感问题,则使用REGEXP_LIKE()
的i
选项以及管道操作符,例如
REGEXP_LIKE(Description,'Internet Expenses Setup and Admin|IExpenses Setup and Admin','i')
顺便说一句,使用上述选项已满足的豁免条件与此无关。基于此输入,期望的结果是什么?我将尝试使用REGEXP_,就像我所看到的那样,它将实现技巧