如果我想要获得5年的时间,如何逐月打印这个SQL语句?

时间:2017-12-13 12:22:02

标签: sql oracle

我需要一个月一个月打印这个查询。

  1. 也就是说,结果将是从1月到12月的12个相应选择。
  2. 也就是说一年而不是编写12个SQL查询,这些查询在一个查询中逐月显示。

    1. 如果我需要间隔5年,例如从2012年到2016年,我会做60个选择..
    2. 也就是说,5年内,它不是编写60个SQL查询,而是在单个查询中显示60个月。 我该怎么做?

      日期数据为V_FECHA_ORI_TREN.date BETWEEN 20120101 AND 20121228

      SELECT Count(DISTINCT hc_tren.cod_numtr 
                            ||hc_tren.fec_oritr), 
             dm_punto_regulacion.desc_pr 
      FROM   hc_tren, 
             dm_punto_regulacion, 
             dm_tiempo V_FECHA_ORI_TREN, 
             hc_movimientos_tren 
      WHERE  ( hc_tren.cod_numtr = hc_movimientos_tren.cod_numtr 
               AND hc_tren.fec_oritr = hc_movimientos_tren.fec_oritr ) 
             AND ( hc_tren.fec_oritr = V_FECHA_ORI_TREN.fecha ) 
             AND ( hc_movimientos_tren.cod_pr = dm_punto_regulacion.cod_pr ) 
             AND ( Nvl(hc_movimientos_tren.flag_pr, 'S') = 'S' ) 
             AND ( Nvl(hc_tren.flag_sin_movimientos, 0) = 0 ) 
             AND V_FECHA_ORI_TREN.fecha BETWEEN 20120101 AND 20121228 
      GROUP  BY dm_punto_regulacion.desc_pr; 
      

0 个答案:

没有答案