0

2つの列があります。1つ目は「開始日」、2つ目は「終了日」です。次に、クエリを使用して、2つの間の日数の差を計算しました。この結果の月平均を計算する方法を知りたいです。

これは私のクエリです

SELECT 
memos.sda.num_sda, 
memos.sda.fecha_gen_sda, 
memos.sda.recurso, 
fechas.bodega_recep_inf_1.num_sda, 
fechas.bodega_recep_inf_1.fecha_recep, 
DATEDIFF( fechas.bodega_recep_inf_1.fecha_recep, memos.sda.fecha_gen_sda ) 
AS date_difference, 
MONTHNAME( memos.sda.fecha_gen_sda ) AS nombre_mes
FROM memos.sda
INNER JOIN fechas.bodega_recep_inf_1 
ON memos.sda.num_sda = fechas.bodega_recep_inf_1.num_sda
GROUP BY memos.sda.num_sda

そして結果:

 _________________________________________________________________________________________
 |num_sda  |fecha_gen_sda|recurso    | num_sda  |fecha_recep  |date_difference | nombre_mes|
 -------------------------------------------------------------------------------------------
 |25227    | 31-01-2013  |1RJB070031 |  25227   | 20-02-2013  | 20         | January
 |25228    | 31-01-2013  |1RVRV20015 |  25228   | 07-02-2013  | 7          | January
 |25229    | 31-01-2013  |1RKB010041 |  25229   | 07-02-2013  | 7          | January
 |25231    | 01-02-2013  |1RJB010585 |  25231   | 07-02-2013  | 6          | February
 |25232    | 01-02-2013  |1R¥R¥50080 |  25232   | 11-02-2013  | 10         | February
 |25235    | 01-02-2013  |1R¥R¥50022 |  25235   | 11-02-2013  | 10         | February
 |25237    | 01-02-2013  |3RBS040030 |  25237   | 12-02-2013  | 11         | February

すべての列の平均が必要ですが、月ごとに分けています。

だから、私が使用する場合

avg(DATEDIFF( fechas.bodega_recep_inf_1.fecha_recep, memos.sda.fecha_gen_sda)) AS avg

行全体の平均であり、列全体ではないため、機能しません

4

1 に答える 1

0

何かのようなもの

SELECT 
AVG(DATEDIFF( fechas.bodega_recep_inf_1.fecha_recep, memos.sda.fecha_gen_sda ) 
AS avg_date_difference
FROM memos.sda
INNER JOIN fechas.bodega_recep_inf_1 
ON memos.sda.num_sda = fechas.bodega_recep_inf_1.num_sda
GROUP BY MONTH( memos.sda.fecha_gen_sda )
于 2013-02-27T13:22:28.523 に答える