2016-06-20 13 views
0

に与えられた条件でカラムに特定のレコードを交換してください:私は応じて3-01のために1-01とバック1に5-01ではなくを変更したい私は下表持っKDB

tab:([]a:(`$"1-01";`2;`$"3-01";`4;`$"5-01";`6);source:`a`a`b`b`a`b) 

a source 
----------- 
1-01 a  
2 a  
3-01 b  
4 b  
5-01 a  
6 b 

をソース上で。私は列にこのバックを置くことができますが、これは私が欲しいものではありませんこれを行うことにより、

`$({ssr[string x;"-01";""]}each tab[`a]) 

:私は以下のコードを書きました。私も次のようにした:

しかし、これを実行した後、私はテーブルに戻す方法を知らない。その後、私は実行制御を使用することを考えました:しかし、どのようにコード化すべきかわかりません。私はそれが半分の方法は行っている、それが実際に動作しません:

?[tab[`source] = `a;`$({ssr[string tab[`a];"-01";""]});tab[`a]] 

答えて

1

アン「のアップデートは、」何が必要のようです:私はアップデートを使用できない理由

q)update `$ssr[;"-01";""] each string a from tab where source=`a 
a source 
----------- 
1 a 
2 a 
3-01 b 
4 b 
5 a 
6 b 
+0

おかげで、あなたは知っていますファンクション?常にエラーがあります。これを含めるには別のselect文を使用しなければなりませんでした。 – Terry

+0

関数内で更新の例を挙げることはできますか? – terrylynch

+0

これを前に試してみたところ、うまくいきませんでした。 ''タブから '$({ssr [文字列x;" - 01 ";"]]}各タブ['a] – Terry

関連する問題