【问题标题】:MySQL starts with searching issueMySQL 从搜索问题开始
【发布时间】:2012-03-25 05:56:43
【问题描述】:

我在使用带有 MySQL 查询的 % 通配符时遇到问题。

http://www.w3schools.com/sql/sql_like.asp

阅读那篇文章后,我正在使用%,但并没有达到我的预期。

我有一系列的值,比如

1_1
1_2
2_1
2_2... etc

包括

11_1
11_2

现在,在某些情况下,我想专门返回值 = 11_21_2 等的那些。这很好用

WHERE fieldName = '11_2'

等等……如预期的那样

但是,在某些情况下,我想查找所有以 1 开头的项目或所有以 11 开头的项目

从 w3Schools 链接,我期待

WHERE fieldName LIKE '1_%'

要查找以1_ 开头的任何内容,因此,在我的示例中,返回:

1_1
1_2

但是,它也会返回

11_1
11_2

这是为什么?我该如何克服呢?

【问题讨论】:

    标签: mysql sql sql-like


    【解决方案1】:

    下划线是单个字符的通配符。您需要将 SQL 更改为:

    WHERE fieldName LIKE '1%'
    

    或者你可以转义下划线

    WHERE fieldName LIKE '1\_%' 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多