对于dreamfactory的第2版,我无法像以前那样在过滤器或字段参数中使用聚合函数。
假设示例如何使用api
查询以下内容SELECT HOUR(col2), MAX(col1)-MIN(col1)
FROM table_name
WHERE col3=CURDATE()
GROUP BY col3
我收到以下错误:
1)DateTime::__construct(): Failed to parse time string (CURDATE) at
position 0 (C): The timezone could not be found in the database.
2)Invalid field requested: HOUR(col2)
答案 0 :(得分:0)
有几点需要注意。 “SELECT”字段不能包含函数调用,但从版本2.0.2开始,DreamFactory支持virtual fields。将vcol2设置为“HOUR(col2)”并将vcol1设置为“MAX(col1)-MIN(col1)”,然后在字段参数中使用它们。
至于过滤器错误,在下周(12/21)发布的2.0.3版本中修复了一个错误,但所有函数调用必须被parens包围,即“col3 =( CURDATE())”。
以下是正确的API查询:
GET http://server/api/v2/service/_table/table_name?filter=col3%20%3D%20(CURDATE())&group=col3&fields=vcol2,vcol1