[英]Mysql WHERE column is in string
我希望,这不是一个非常愚蠢的问题,但是几个小时后,我正在寻找解决方案,但没有成功。
我有一张名为城市的桌子:
柏林
纽约
汉堡
...
我有一个字符串:“波恩纽约芝加哥”
现在,我想从这个字符串中选择所有“已知”的城市。 但正如您所看到的,我无法将此字符串拆分为数组(因为“纽约”)。 所以“FIND_IN_SET”不适合我。 功能“LIKE”正在“错误的方向”工作。
所以我需要像%cities.name%EKIL $ string :-D这样的东西
有没有人有想法,如何在不使用PHP的情况下处理这个问题?
我希望,我不会错过森林的树木......
非常感谢你的帮助!
托比亚斯
您需要创建一个cities
数组,然后针对您的城市数组检查字符串。
$to_match = array('Bonn','New York','Chicago'); // all cities array
$str = "Bonn New York Chicago"; // Your city string
$new_array = array();
foreach($to_match as $value) {
if(stristr($str, $value)) {
$new_array[] = $value;
}
}
print_r($new_array); // here you can get only match cities against all cities array
这将迭代每个array
元素,然后检查$str
match
存在match
值,然后将它添加到$new_array
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.