我试图用Drupal7db\u select执行下面的mysql查询。但我不明白这是怎么做到的。有人能帮我把下面的mysql查询翻译成drupal7动态db查询吗?
我的主要目标实际上是按照名称中给定的字符串位置对mysql结果进行排序。请记住,我不想获取所有的结果并用php对它们排序,相反,我想用mysql来实现这一点。我知道“orderbylocate”命令就是这样做的。
SELECT name FROM `taxonomy_term_data` WHERE LOCATE('credit', name) > 0 ORDER BY LOCATE('credit', name)
2条答案
按热度按时间xqnpmsa81#
1. db\u select的正确示例
有可能,使用Drupal7DB\uSelect,下面是我的示例工作代码(在本文的帮助下完成)
我在with table中的示例
cities
包含列city
. 找到带有双“o”的城市并按其位置排序:在你的例子中类似的是:
2. 您需要使用db\u select吗?
正如有人在我发布的链接中的评论中所说的,“有很多时间和地点可以直接使用db\u查询。”
我认为这是时候了:)不要仅仅为了使用drupal方式的逻辑而过度复杂代码,这种逻辑通常已经过时,或者对于复杂的任务来说过于简单。
bweufnob2#
我想你应该试试这样的。
db_like
功能似乎做什么你正在寻找。