Drupal db_select和MYSQL函数作为条件

Geo*_*nas 3 php mysql drupal drupal-7

好的,让我解释一下我的情况.我试图做一个mysql查询:

Select * FROM dates n WHERE (MONTH(FROM_UNIXTIME(n.date)) = '12');
Run Code Online (Sandbox Code Playgroud)

但是我需要查询在db_select函数中.

如果我添加:

$this->query->condition('MONTH(FROM_UNIXTIME(n.date))', 12, '=');
Run Code Online (Sandbox Code Playgroud)

Drupal删除括号并将函数封装在引号中.

我将如何添加条件.

Geo*_*nas 9

好的想出了我自己的答案!非常愚蠢,但经过一个多小时的搜索,我敢打赌,我可以帮助有人在路上.

我变了

$this->query->condition('MONTH(FROM_UNIXTIME(n.date))', 12, '=');
Run Code Online (Sandbox Code Playgroud)

$this->query->where('MONTH(FROM_UNIXTIME(n.date)) = :val', array('val'=>12));
Run Code Online (Sandbox Code Playgroud)

奇迹般有效!!!