当前位置: 首页 > 面试题库 >

将查询匹配到SQL中的正则表达式?

萧鹏云
2023-03-14
问题内容

我正在尝试找到一种将查询与数据库中的正则表达式匹配的方法。据我所知(尽管我不是专家),尽管大多数DBMS(例如MySQL)都有用于搜索的正则表达式选项,但您只能执行以下操作:

在第1列中找到与我的查询中的正则表达式匹配的所有行。

我想做的是相反的,即:

在第1列中找到所有行,以使第1列中的正则表达式与我的查询匹配。

一个简单的例子-说我有一个像这样的数据库结构:

+----------+-----------+  
| Column 1 |  Column 2 |
+----------+-----------+
|  [a-z]+  |  whatever |
+----------+-----------+
|  [\w]+   |  whatever |
+----------+-----------+
|  [0-9]+  |  whatever |
+----------+-----------+

因此,如果我查询 “ dog” ,我希望它返回带有[az] +和[\ w] +的行,如果我查询 123 ,它将返回带有[0-9] +的行。

如果您知道在SQL中执行此操作的方法,将不胜枚举简短的SELECT示例或带有示例的链接。


问题答案:

对于MySQL(也可能是其他数据库):

SELECT * FROM table WHERE "dog" RLIKE(`Column 1`)


 类似资料:
  • 有没有人试图描述与正则表达式匹配的正则表达式? 由于重复的关键字,这个主题几乎不可能在网上找到。 它可能在实际应用程序中不可用,因为支持正则表达式的语言通常具有解析它们的方法,我们可以将其用于验证,以及一种在代码中分隔正则表达式的方法,可用于搜索目的。 但是我仍然想知道匹配所有正则表达式的正则表达式是什么样子的。应该可以写一个。

  • 我们得到了一些这样的内容:

  • 有从字符串中提取SQL查询的正则表达式吗?我不想验证任何SQL语法,而是只想提取一组SQL命令。这是为了以灵活的方式解析给定的SQL文件/字符串。 给出了以下SQL文件/字符串示例: 一些伪代码示例是:。在将来,我希望用所有(可能的)命令来扩展它。 查找具有以下任一项的起始匹配:(UPDATESELECTINSERTINTO) 零个或多个(包括空格和换行符) 停止在处,它分隔SQL查询。 只要通过

  • 主要内容:基本模式匹配,字符簇,确定重复出现基本模式匹配 一切从最基本的开始。模式,是正则表达式最基本的元素,它们是一组描述字符串特征的字符。模式可以很简单,由普通的字符串组成,也可以非常复杂,往往用特殊的字符表示一个范围内的字符、重复出现,或表示上下文。例如: 这个模式包含一个特殊的字符 ^,表示该模式只匹配那些以 once 开头的字符串。例如该模式与字符串 "once upon a time" 匹配,与 "There once was

  • 问题内容: 我没有JavaScript方面的丰富经验,但是我正在尝试创建一个标记系统,而不是使用or ,而是使用。 我该如何使用而不是。我尝试做并添加,但是失败了。 问题答案: 您可以这样逃避它。 或只使用indexOf

  • 问题内容: 当字符串以数字开头时,我需要匹配,然后是一个点,然后是一个空格和1个或多个大写字符。匹配必须发生在字符串的开头。我有以下字符串。 我尝试过的正则表达式是: 它不匹配。一个有效的正则表达式将对这个问题有什么作用? 问题答案: (对不起,我先前的错误。大脑现在坚定地投入了。嗯,也许。) 这有效: 分解: =字符串开头 =一个或多个数字 (之所以转义,是因为它在字符串中,因此) =文字(或者