mysql - drupal 7 $query->where 和 DATE_FORMAT 无法识别

标签 mysql drupal drupal-7 view drupal-views

我已经实现了一个函数views_query_alter。 我想添加一个 where 子句。 我尝试使用: $query->add_where(0, "DATE_FORMAT(myfieldname, '%Y-%m-%d')", "DATE_FORMAT(now(), '%Y-%m-%d')", '>');

我也尝试有条件。 两种情况下打印的 sql 结果相同,均为 DATE_FORMATmyfieldnameYmd。有没有办法将 DATE_FORMAT 或任何成功识别的 DATE_FORMAT 函数转义到 where 子句中?

提前谢谢

最佳答案

不知道您是否找到了解决方案,但以下内容对我有用

$query->add_where_expression(0, "DATE_FORMAT(STR_TO_DATE(myfieldname.value, '%Y-%m-%d'), '%Y-%m') > 'value'");

关于mysql - drupal 7 $query->where 和 DATE_FORMAT 无法识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28940356/

相关文章:

javascript - 如何自动调整此 HTML 菜单的大小以适合父级宽度?

javascript - 在没有 drupal 的情况下使用 Drupal 工具栏

Drupal:url_rewrite中的hook_url_inbound_alter:重写URL的查询部分以进行分页

rest - 使用 Angular 前端和 Drupal 7 后端处理 CSRF/XSRF token

python - 与 MySQL dB 的 SSL 连接失败

mysql - 如何始终将值 1 分配给创建的 LAST "row_id"

bash - 在 Fish Shell 中设置导出

php - 在 Drupal 7 中使用 RESTful 模块创建用户 API

mysql - 为什么关联集合包含空值? (Hibernate, Annotation, Spring)

php - 来自 php vars 的 jquery 自动完成