您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在mySQL的整个表中搜索字符串

在mySQL的整个表中搜索字符串

尝试这样的事情:

SELECT * FROM clients WHERE CONCAT(field1, '', field2, '', fieldn) LIKE "%Mary%"

您可能需要查看sql文档,以获取有关字符串运算符和正则表达式的其他信息。

编辑:NULL字段可能存在一些问题,因此以防万一,您可能想使用IFNULL(field_i, '')而不是field_i

:您可以使用不区分大小写的排序规则或类似的方法

... WHERE LOWER(CONCAT(...)) LIKE LOWER("%Mary%")

:我相信没有一种方法可以使SQL查询在没有明确声明要搜索的字段的情况下遍历所有字段。原因是存在关系数据库的理论和操纵关系数据的严格规则(某些东西例如关系代数或codd代数;这些是sql的来源),理论上也不允许“仅搜索所有字段”之类的事情。当然,实际行为取决于供应商的具体实现。但是在通常情况下是不可能的。为了确保这一点,请检查SELECT运算符的语法(WHERE准确地说是“节”)。

MySQL 2022/1/1 18:51:21 有302人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶