sqlDelete
语法
sqlDelete(table, [where])
参数
table 可以是内存表,亦可为分布式表。
where 是元代码,表示where条件。
详情
动态生成SQL delete语句的元代码。若需执行生成的元代码,请配合使用 eval 函数。
例子
例1. 删除内存表记录
$ t1=table(`A`B`C as symbol, 10 20 30 as x)
$ sqlDelete(t1, <symbol=`C>).eval()
$ t1;
symbol |
x |
---|---|
A |
10 |
B |
20 |
例2. 删除分区表记录
$ if(existsDatabase("dfs://db1")){
$ dropDatabase("dfs://db1")
$ }
$ n=1000000
$ t=table(take(`A`B`C`D,n) as symbol, rand(10.0, n) as value)
$ db = database("dfs://db1", VALUE, `A`B`C`D)
$ Trades = db.createPartitionedTable(t, "Trades", "symbol")
$ Trades.append!(t)
$ select count(*) from Trades;
1000000
$ Trades=loadTable("dfs://db1", "Trades")
$ sqlDelete(Trades, <symbol=`A>).eval()
$ select count(*) from Trades;
750000