ID array1 array27333 | {615593} | {NulL}7333 | {2013682} | {NulL}7333 | {26573,1508291} | {NulL}7333 | {1457957} | {NulL}7333 | {NulL} | {1063105}7333 | {NulL} | {107978,408431}
我期待查询每个edge_ID的array1和array2的所有唯一项.例如
ID array1_distinct array2_distinct7333 5 3
我尝试过类似下面的内容
SELECT ID,array1_count FROM ( SELECT ID,COUNT(disTINCT((CASE WHEN array1 is not null THEN (select unnest(array1)b) END)) as array1_count FROM mytable GROUP BY ID) totalslimit 1
我总是会遇到错误,例如“用作表达式的子查询返回的多行”和“在使用unfst时尝试计算数组中的元素时在上下文中调用的集值函数”.
解决方法select ID,count(distinct a1) as a1,count(distinct a2) as a2from ( select ID,unnest(array1) as a1,unnest(array2) as a2 from t) sgroup by ID总结
以上是内存溢出为你收集整理的数组 – postgres:如何在给定条件的情况下计算数组列中的不同元素全部内容,希望文章能够帮你解决数组 – postgres:如何在给定条件的情况下计算数组列中的不同元素所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)