select *
from table
group by a,b,c
order by a,b,c
现在不单单是看看查询结果,把select出来的结果放到一个二维数组里。我现在要把不同的group输出到不同的excel sheet(我是做web的),那么怎么区分group呢?假设有两条纪录的话,即两条纪录a,b,c中任一列和对方不同那么这两条纪录要分别输出到不同的sheet,否则输出到同一sheet.

解决方案 »

  1.   

    最笨的方法,自己分析结果集,看看到底在不在一个group中。不知道sql中有没有好的解决办法。
      

  2.   

    把你的SQL语句分成几个独立的SQL语句,每个语句对应你的一个sheet;不同的选择行为分别放在不同的SQL语句中,查询结果放在不同的数组中,就可实现你要的功能了。
      

  3.   

    在上面的SQL查询结果上,再使用SQL语句,对不同的A,B,C进行筛选,把结果放入不同的SHEET就可以了。
    首先:SQL当中加入DIST指定每个GROUP只有选择一个结果,这样可以确定SHEET的数量,以及每个SHEET当中ABC组合状况
    然后,根据上面的结果,再查询满足该ABC组合的所有的内容,把他们都放入相应的SHEET