如何在循环中运行SQL查询

时间:2016-08-11 23:03:48

标签: mysql sql arrays string loops

如何在循环中多次运行此SQL查询,在每次迭代期间我将单词'pubs'替换为另一个单词。有没有办法存储一个字符串数组并循环它们?

SELECT * FROM businesses WHERE category='pubs'

2 个答案:

答案 0 :(得分:4)

一般情况下,批量或批量查询通常比循环中的查询更好,因为您可以保存到DB的往返调用。

考虑做一些类似SELECT * from businesses WHERE category IN ('pubs', ...)的事情,或者如果您计划迭代所有类别,检索所有项目行并以编程方式在返回的模型中使用category来执行您需要的操作。< / p>

如果您绝对必须使用循环,则可以查看loop documentation

答案 1 :(得分:2)

您可能不需要循环来运行它们而是使用IN子句来包含所有可能的条件值,例如

SELECT * FROM businesses WHERE category IN ('pubs','subs','nubs')