对数据库中的特定行执行grep搜索

时间:2016-04-26 08:16:33

标签: php sql

我需要对数据库中的特定行执行grep搜索。我已经看到了一些关于如何使用mysqldump执行grep搜索的示例,但这似乎是针对整个数据库,我只需要在某一行上执行它。我正在使用PHP代码来访问和检索数据库中的数据,所以如果有类似grep的东西,我可以通过PHP使用,这将更好!感谢。

编辑:只是为了进一步扩展我需要做的事情。我有一个在linux服务器上运行的网页。我的数据库中有一行称为内容,每个内容行包含一个存储为blob的xml文件。我需要使用grep搜索或类似的东西搜索这些xml文件,这是一个grep搜索is this。根据我对grep的理解,它需要一个模式,因此用户可以从网页上将模式作为文本字段提交,希望有所帮助。

1 个答案:

答案 0 :(得分:0)

正如slax0r在评论中建议的那样,您可以使用LIKE运算符来搜索包含特定子字符串的行:

SELECT content FROM my_table WHERE content LIKE '%thesubstringimlookingfor%';

你提到了mysqldump,所以我假设你正在使用MySQL。如果您想要的不仅仅是简单的子字符串,可以使用REGEXP运算符。例如,如果要获取“content”列包含数字的所有行:

SELECT content FROM my_table WHERE content REGEXP '[0-9]+';

请查看documentation,了解如何正确使用REGEXP