sum-if 如何在 Korma 中工作?
这是示例查询
SELECT SUM(if(items.quantities > 1, 1, 0)) AS multiples FROM items;
我让它与 Korma 提供的 raw-exec 一起工作。但是,我有兴趣知道如何用 Korma 语法编写它。
sum-if 如何在 Korma 中工作?
这是示例查询
SELECT SUM(if(items.quantities > 1, 1, 0)) AS multiples FROM items;
我让它与 Korma 提供的 raw-exec 一起工作。但是,我有兴趣知道如何用 Korma 语法编写它。
IF
是供应商特定的功能,所以我怀疑它会被支持。
您可能会更幸运地将您的查询转换为与供应商无关的内容并改用它。
这个查询:
SELECT SUM(if(items.quantities > 1, 1, 0)) AS multiples FROM items;
相当于以下一个:
SELECT count(*) AS multiples FROM items WHERE quantities > 1;
转换为以下 korma 表达式:
(select items
(aggregate (count :*) :multiples)
(where {:quantities [> 1]}))
我会用这个:
(select items
(fields (raw "SUM(if(items.quantities > 1, 1, 0)) AS multiples"))