0
我知道有一个SELECT array_agg(f) FROM (SELECT blah FROM stuff) f
的过程,这在SQL中很棒,但在PL/pgSQL中编写函数时,有没有简写方法?在PL/PgSQL中将返回的SETOF转换为数组
我想把JSON键放到一个数组中,我可以用来看看长度。 喜欢的东西...
v_len := array_length(array_agg(json_object_keys(myjson)), 1);
而不是长,声明一个变量,做一个SELECT array_agg(f) INTO ...
,这是我一直在做。我似乎有数百个实现使用相同的SQL字符串,但我真的想削减我的代码,我的手指从所有多余的键入都麻木了。
我用这种简写方法遗漏了什么?
真棒,知道这是什么短,方便。我最终使用你的解决方案,就像这样...'array_length(ARRAY(SELECT rs FROM json_object_keys(myjson)rs),1)',它可以很好地工作以获得JSON密钥的数量。 –
@GuyPark:你可以将'SELECT rs FROM json_object_keys(myjson)rs'缩短为'SELECT json_object_keys(myjson)' –
Nick –