我也是好久没有碰数据库了,现在有两个表一个是类别表
大类,中类,小类 
分别对尖的数据是
01   0101   010101也就是说2位,4位,6位,
另有一个物资表
物资ID,类别(对应小类),物资名称,物资ID等等。要查出以下的格式。

解决方案 »

  1.   

    select d.大类,c.中类,b.小类,a.* from 物资表 a 
    inner join 类别表 b on a.类别 = b.小类 
    inner join 类别表 c on b.中类 = c.中类
    inner join 类别表 d on c.大类 = d.大类
      

  2.   

    是啥数据库,如果是SQL Server,可以使用With语句
      

  3.   

    是Oracle数据库,还有好多的汇总列。我只弄了一部分。我先汇总几条看看。 数据量是非常大的,每个表大约几百万的数据,另一个详细表,要统计的数量表是这样的,
    物资ID  自编码  数量 ,一个物资ID就可能上百万,这个表是大约几千万到上亿数据,汇总一下基本就不动了,用over完全不动了,用group by 还是能出来数据,就是超慢。
      

  4.   


    主键外键要建立索引,如果没有,加上索引情况会有较大改善。还有,你统计过程中的一些条件查询where语句避开使用like及其他函数操作,大数据量的查询才真的体现出技术,这里面有一些讲究的,每一小小的改进都会提升一定的速度,可以到网上看看别人的一些经验。
      

  5.   

    还真的没有,他们要的东西全要。80%的表都用到了,数据量又大,
    现在把他这个Excel按功能点拆了,还行,合起来,搞不出来啊,数据量太大了,搞不定,
    其实我也有几年没有来CSDN了,这次是来看看是不是有出什么新的东西能搞定。
      

  6.   

    ORACLE中有个
    start with connect by prior
    可以整理出如图树形结构