1

sum-if は Korma でどのように機能しますか?

これがサンプルクエリです

SELECT SUM(if(items.quantities > 1, 1, 0)) AS multiples FROM items;

これは、Korma が提供する raw-exec で動作するようになりました。しかし、これをコルマ構文で書く方法を知りたいです。

http://sqlkorma.com/docs#selectを見てみました

4

2 に答える 2

1

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]}))
于 2014-09-16T22:26:14.583 に答える