【问题标题】:Mysql query find substringMysql查询查找子字符串
【发布时间】:2013-07-05 06:36:27
【问题描述】:

我有一张这样的桌子:

country (id, name)

我想找到例如搜索字符串是“俄罗斯联邦”并且在我的表中存储值“俄罗斯”的 id。

实际上,存储的值是搜索字符串的子字符串。

【问题讨论】:

    标签: mysql sql substring


    【解决方案1】:

    你可以这样试试:

    SELECT *
      FROM Country
      WHERE 'Russian Federation' LIKE CONCAT('%', Name, '%')
    

    这是SQL Fiddle 演示。

    【讨论】:

      【解决方案2】:

      如果是这样,那么你可以这样做:

      select *
      from country
      where concat(' ', SEARCHSTRING, ' ') like concat('% ', name, ' %')
      

      或者你可以使用find_in_set():

      select *
      from country
      where find_in_set(name, replace(SEARCHSTRING, ' ', ',')) > 0;
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-19
      • 2018-12-02
      相关资源
      最近更新 更多