php - 如何进行查询以找到字符串中的特定文本并抓取其旁边的部分?

标签 php mysql database mysqli

尝试使用 mysql 来理解 LEFT 和 LOCATE 来帮助我处理字符串

我的文本包含一堆数据,其中包含

street_num="9716", street_name=

我只需要提取街道号码

所以我想这样做

SELECT LEFT( newdata, LOCATE( 'street_name=', 'newdata' ) ) 
FROM `uploadTracker` 
WHERE `type` =0

在该示例中,我希望它返回 9716

最佳答案

在像这样的函数 SUBSTRING_INDEX() 的情况下变得非常方便

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(newdata, 'street_num="', -1), '"', 1) street_num
  FROM uploadTracker
 WHERE type = 0

输出:

| STREET_NUM |
|------------|
|       9716 |

这里是SQLFiddle 演示

关于php - 如何进行查询以找到字符串中的特定文本并抓取其旁边的部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20205472/

相关文章:

python - SQL与python连接

php - Laravel/Eloquent 具有模型特征的碰撞

php - 简单的 if 语句(不是速记)

PHP:是否可以执行 MySQL 语句来创建数据库,即使我已经连接到我的数据库?

database - 没有绝对路径的Qt SQLite数据库

python - Django 的 JSON 和 XML fixtures 导致 UnicodeEncodeError

PHP和MySQL分页问题

php - 如何在php中格式化日期2015-12-25T10 :11:14. 000Z以存储到mysql中的日期时间?

MySQL:创建触发器时出现语法错误

mysql - 如何从 MySQL 中的另一个表中仅选择第一个匹配值?