oracle数据库,对多列,空集合,合并为一列查询SQL的方法?
对于多列,多空集集合查询组合合并为一列的查询不知道如何书写SQL完整语句。跪求大神指教。A,B,C,D,E都是数据库原有的数据。只是在查询时多显示一列NEW,此列为A,B...
对于多列,多空集集合查询组合合并为一列的查询不知道如何书写SQL完整语句。跪求大神指教。
A,B,C,D,E都是数据库原有的数据。只是在查询时多显示一列NEW,此列为A,B,C,D数据合并的新列。并不是重新插入数据。只是单纯的一个select语句。 展开
A,B,C,D,E都是数据库原有的数据。只是在查询时多显示一列NEW,此列为A,B,C,D数据合并的新列。并不是重新插入数据。只是单纯的一个select语句。 展开
2个回答
展开全部
因为oracle都是列处理函数,先利用union行转列,然后在找到每个id分组对应的最小值,再合在一起,不过如果数据量大的话,那么这种办法不那么靠谱。
追问
还有没有其他的办法。数据量太过庞大
追答
就算你考虑所有的情况然后用case when判断那写好长,而且可以告诉你这样的语句有大约60种可能性(没具体计算,你这么想吧,有P(2,4)=12,P(4,4)=24,这就36种了),你估计一条语句写60个判断效率会如何。
如果真的想一条语句完成,我估计可能性不大,要是写函数,利用循环来写可能能行(一个字段一个字段的判断,是否为空和大小,为空跳过,为小的循环到下一级,这样循环应该可以),不过这个真的没试验,而且你的数据量如果大的话,游标会卡死的。反正不管怎么琢磨,似乎都不太靠谱
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询