mysql - 使用 MySQL 和 Regex 从描述中提取颜色

标签 mysql regex

请参阅以下 MySQL fiddle :

http://sqlfiddle.com/#!9/e84a6a/3/0

我提供了两个示例表格,第一个是颜色列表,第二个是描述列表。

我想将颜色提取到一个新的单独列中,其中颜色同时存在于 tbl_colours 和 tbl_example 的描述中。

我怀疑我需要实现正则表达式和单词边界(即仅提取与“整个单词”匹配的颜色,即被空格、字符串结尾/开头、括号等包围。

我无法理解的是如何将连接和正则表达式与单词边界结合起来。

这在 MySQL 中可能吗?

最佳答案

一旦你解释了 MySQL 中\b 的奇怪符号,这实际上很容易:

SELECT 
    d.Code, d.Description, c.colour
FROM
    tbl_example d
        LEFT JOIN
    tbl_colours c ON UPPER(d.Description) REGEXP CONCAT('[[:<:]]', colour, '[[:>:]]')

关于mysql - 使用 MySQL 和 Regex 从描述中提取颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52648544/

相关文章:

python - Django 中的同步 AJAX 请求和 MySQL 数据库数据可见性

MySQL 交叉表结果

c# - MySqlHelper 类中的事务锁

Java:从字节数组中删除连续的零段

python - 忽略包含特定文本的行的一部分

MySQL - SQLite 如何改进这个非常简单的查询?

php - 为什么每个人都使用 latin1?

php - 使用 preg_replace 返回引用数组键并替换为值

c# - 需要从c#中的字符串中提取列名

regex - 如何使用Sublime Text的 "Find in Files"查找包含多个不同字符串的文件?