php mysql drupal drupal-7

php - Drupal db_select y una función MYSQL como condición



drupal apache (1)

Ok, déjame explicarte mi situación. Estoy tratando de hacer una consulta mysql como tal:

Select * FROM dates n WHERE (MONTH(FROM_UNIXTIME(n.date)) = ''12'');

Pero necesito que la consulta esté en la función db_select.

Si agrego:

$this->query->condition(''MONTH(FROM_UNIXTIME(n.date))'', 12, ''='');

Drupal elimina el paréntesis y encapsula la función entre comillas.

¿Cómo voy a agregar una condición como tal?


Ok, descubrí mi propia respuesta! Muy tonto, pero después de pasar más de una hora buscando, apuesto a que podría ayudar a alguien en el camino.

Cambié

$this->query->condition(''MONTH(FROM_UNIXTIME(n.date))'', 12, ''='');

A

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

¡¡¡Funciona de maravilla!!!