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

为什么“ _”(下划线)与“-”(连字符)匹配?

慕容劲
2023-03-14
问题内容

我必须使用此查询查找PDF手册:

root@localhost:test> select * from a where name like '%taz_manual%.pdf%';
+--------------------+------------------+-------------+
| name               | description      |        size | 
+--------------------+------------------+-------------+
| taz-manual-1.1.pdf | Manual v1.0 TA-Z |    31351902 |
| taz-manual-0.2.pdf | Manual v1.0 T1-A |     3578278 |
| taz_manual-2.0.pdf | Manual v2.0 GA-X |   542578278 |
etc........
+--------------------+------------------+-------------+
132 row in set (0.00 sec)

指定名称为时,为什么会看到带有短划线的那个taz_manual%.pdf


问题答案:

因为下划线_是百分号之类的通配符%,只不过它只查找一个字符。

SQL模式匹配使您可以使用“ _”来匹配任何单个字符,并使用“%”来匹配任意数量的字符(包括零个字符)。

(来自MySQL文档中的3.3.4.7。模式匹配。)

如果要将下划线like用作文字,则必须对其进行转义:

select * from a where name like '%taz\_manual%.pdf%';


 类似资料:
  • 我试图匹配包含字母数字、连字符、下划线和空格的字符串。 连字符、下划线、空格和数字是可选的,但第一个和最后一个字符必须是字母。 例如,这些都应该匹配: 我试过这个: 但它在开始/结束时与空格、下划线或连字符匹配,但它应该只允许在两者之间。

  • 问题内容: 在这里,它说,“注:意思是‘我不关心这个值’”,但是从JavaScript来了,我不明白是什么意思。 我可以打印这些功能的唯一方法是在参数前使用下划线: 没有下划线,我必须这样写,以避免出现任何错误: 我不理解此下划线用法。我何时,如何以及为什么使用这些下划线? 问题答案: 不同的用例有一些细微差别,但是通常下划线表示“忽略此”。 在声明一个新函数时,下划线告诉Swift调用时该参数不

  • 本文向大家介绍python中单下划线和双下划线分别是什么?相关面试题,主要包含被问及python中单下划线和双下划线分别是什么?时的应答技巧和注意事项,需要的朋友参考一下 name:一种约定,python内部的名字,是用来与用户自动以的名字区分开,防止冲突

  • 问题内容: 我正在做一个redux教程,并且看到这样的呼叫: 在其他地方定义为: 下划线是什么“ _”?为什么使用它? 问题答案: 这是私有方法和变量的约定。在JavaScript中,没有类的真正隐私。 这意味着您不应在对象之外使用这些方法(以“ ” 开头)。从技术上当然可以,但是“ ”表示您不应该这样做。

  • 问题内容: 我在阅读“ JPA 2.0中的动态类型安全查询”一 文,偶然发现了以下示例: 我想知道,这里的下划线到底是什么意思? 由于下划线是类名的有效部分,所以我不明白为什么可以在JPA中使用它。我用代码中的现有实体检查了这个,当然我的班级无法解析为 问题答案: 那就是持久性的元模型。这是您可以在Java中键入安全JPA查询的方法。它允许查询静态地检查您的查询,因为类描述了您的JPA 。在HQL

  • 所以我在angularjs服务器中有一个方法,它调用一个方法,为数组中的每个方法返回一个promise。我使用下划线_each在数组中循环。我想等到整个数组被处理后,再调用方法中的最后一行代码... 所以... 这当然行不通。。循环完成并调用“ShowAllMyColStuff”,然后对每个项目执行MakeSuffCooler。所以与async方法交互的正确方法是什么,这样我的ShowAllMyC