gpt4 book ai didi

mysql - MySQL 中两种模式匹配形式的区别

转载 作者:行者123 更新时间:2023-11-30 00:25:39 25 4
gpt4 key购买 nike

MySQL 中有两种形式的模式匹配。

  1. SQL 模式匹配。
  2. 扩展正则表达式模式匹配

任何人都可以指定这两种模式匹配形式之间的确切区别吗?我用谷歌搜索了很多,但无法得到令人信服的答案。官方文档也没有给出很好的答案。任何帮助将不胜感激

提前致谢

最佳答案

SQL 模式匹配使您可以使用“_”来匹配任何单个字符,使用“%”来匹配任意数量的字符(包括零个字符)。在 MySQL 中,SQL 模式默认不区分大小写。这里显示了一些示例。使用 SQL 模式时不要使用 = 或 <>;请改用 LIKE 或 NOT LIKE 比较运算符。

LIKE 和 REGEXP 运算符之间的一个重要区别是,LIKE 运算符仅在模式与整个字符串匹配时才返回 True。例如。 WHERE testcolumn LIKE 'jg' 将仅返回 testcolumn 与 jg 相同的行,除了大小写差异之外。另一方面,WHERE testcolumn REGEXP 'jg' 将返回 testcolumn 在字符串中任意位置具有 jg 的所有行。使用 WHERE testcolumn REGEXP '^jg$' 仅获取与 jg 相同的列。 WHERE testcolumn LIKE 'jg%' 的等效项是 WHERE testcolumn REGEXP '^jg'。无需在正则表达式末尾添加 .*(REGEXP 相当于 LIKE 的 %),因为部分匹配被接受。

http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html

关于mysql - MySQL 中两种模式匹配形式的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22910542/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com