如何去掉表中第一个为0位置前的数据

想获取第一个非零值后面的数据,比如我有表t以及数据为:


t=table(1..5 as id, 1 2 0 12 13 as x)
id	x
1	1
2	2
3	0
4	12
5	13

去掉后,想得到的结果:

id	x
4	12
5	13
请先 登录 后评论

1 个回答

wale

试试ifirstNot,它可以返回第一个非空元素的下标:

select * from t where id>id[ifirstNot(iif(x!=0,NULL,x))]

执行结果:

id	x
4	12
5	13

请先 登录 后评论