我想在Drupal中用几行的SUM做一个简单的选择,但我似乎无法弄清楚如何做到这一点。我知道有更多方法可以在Drupal中进行查询(其中一个是编写实际查询,但我不想这样做。)
这是我的代码:
$query = db_select("node","n");
$query->fields("n", array("nid","likes" => "SUM(likes)"));
但显然Drupal剥离了我的括号,我收到以下错误:
1054 Unknown column 'n.SUMlikes' in 'field list'
有人能帮帮我吗?是否有类似$query->sum()
的内容?
答案 0 :(得分:17)
你最好使用表达式:
$query = db_select('node', 'n')
->fields('n', array('nid'));
$query->addExpression('SUM(likes)', 'likes');
第一个参数是表达式,第二个参数是别名。
希望有所帮助