1

集計の仕組みと同様に、関数選択の groupby セクションに関数を含めることはできますか?

たとえば、どのように回転しますか

select by `long$`timespan$04:00 xbar time from table

機能選択に?

4

2 に答える 2

2

1.はい、できます。関数だけが group by 句に許可/互換性がある必要があります。「xbar」は許可されています。

構文は次のとおりです。(関数;param1;parma2;...param n)

これが1つの元です。

          q)t:([]id:til 20;v:til 20)
          q)select by 5 xbar id from t
          q) // functional form
          q)?[`t;();(enlist `id)!enlist (xbar;5;`id);()]

2. 単純なクエリの関数形式を取得するためのトリック: 「parse」関数を使用します。

           q) parse "select id from t"

出力は関数形式です:

           q)(?;`t;,(),0b,(,`id)!,`id)

それを使用して関数形式を作成します。

           q) ?[`t;();0b;(enlist `id)!enlist `id]

3.「parse」を使用したクエリの機能形式は次のとおりです。

q)?[`table;();(enlist `time)!enlist ($;enlist `long;($;enlist `timespan;(xbar;04:00;`time)));()
于 2015-02-06T20:12:58.287 に答える
1

xbarこれと同じくらい複雑なものについては、その部分を関数に入れるだけです:

?[`table;();(1#`time)!enlist({(`long$`timespan$04:00) xbar x};`time);()]
于 2015-02-09T09:26:36.847 に答える