在视图和Drupal8的自定义排序插件中,我有下面这行代码:
$formula = '(cas.tier IS NULL)';
$this->query->addOrderBy(NULL, $formula, "ASC", "some_alias");我只想让Drupal将以下代码添加到现有查询中:
ORDER BY (cas.tier IS NULL) ASC但下面是它的功能:
SELECT DISTINCT cas.tier AS some_alias
...
ORDER BY some_alias ASC因此,它在SELECT语句中添加了一个字段选择。虽然它适用于排序,但它在我试图做的事情中引入了所有其他类型的问题。
你知道如何让它简单地添加"ORDER“语句而不搞乱"SELECT”吗?
发布于 2018-05-05 08:51:53
事实证明,在不添加字段的情况下,Drupal不能在ORDER BY语句中添加公式(出于安全原因:https://www.drupal.org/node/829464)
如果排序不涉及公式,则$this->query->orderby将在不向SELECT语句中添加字段的情况下工作,但如果使用公式,则不会。
https://stackoverflow.com/questions/50164426
复制相似问题