我有一个简单的桌子“本地化”与两个字段(城市,街道)。
我只想得到一列"place“,但在MySQL中找不到等效的strstr。
我的查询应该这样做:
SELECT IF(stristr($city, 'earth'),city,street) as place
FROM `localization`
WHERE city LIKE ('%krak%') OR street LIKE ('%krak%');当然,stristr($city,'earth')是PHP的惯例,但我编写这篇文章是为了解释问题所在。
我希望你明白我的意思:)
发布于 2013-09-25 08:36:30
使用mysql中的常规表达式。您的查询将是:
SELECT IF(city like '%krak%',city,street) as place
FROM `localization`
WHERE city LIKE ('%krak%') OR street LIKE ('%krak%');请尝试以上查询。
发布于 2013-09-25 08:28:34
正如谷歌快速搜索所发现的那样:
SELECT SUBSTRING(field_name, instr(field_name, 'needle'), LENGTH(field_name)) AS result FROM table从这里:
http://www.coolsnippets.net/browse/id/18
所以,在你的例子中:
SELECT SUBSTRING($city, instr($city, 'earth'), LENGTH($city)) AS place
FROM `localization`
WHERE city LIKE ('%krak%') OR street LIKE ('%krak%');https://stackoverflow.com/questions/18999768
复制相似问题