gpt4 book ai didi

mysql - 搜索列值在字符串中的位置

转载 作者:行者123 更新时间:2023-11-29 02:56:47 26 4
gpt4 key购买 nike

考虑这个数据库表:

| id | name |    city   |
+----+------+-----------+
| 10 | test | anza |
| 11 | fish | riverside |

我想查找城市名称包含在如下字符串中的项目:

anza city

riverside county

如何使用 MySQL 查找城市名称包含在我的字符串中的项目?换句话说,字符串“anza city”中包含哪些城市?这应该返回 id 10。

好像和MySQL里的LIKE相反

最佳答案

这不是 LIKE 的反义词。我想你有这种感觉的原因是因为你已经习惯了看到这样的事情:

WHERE columnName LIKE 'someString';

但是,您仍然可以使用它,但需要对列进行一些操作。如果你想检查列名是否在你的字符串中,只需在前后添加通配符,并使用 LIKE 这样:

SELECT *
FROM myTable
WHERE 'anza city' LIKE CONCAT('%', city, '%');

请注意,带有通配符的值将放在类似的右侧。如果你说 CONCAT('%', city, '%') LIKE 'anza city' 什么都不会返回。

这是一个 SQL Fiddle示例。

编辑

这里是关于搜索 substring 的更多信息.


有趣的是,这是我的第 300 个 Stack Overflow 答案!希望对您有所帮助。

关于mysql - 搜索列值在字符串中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29973850/

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