0

現在、次のクエリがあります。

select min(nw_lpdTEMP) AS Min_Lkpmp_Temp_C,
  max(nw_lpdPH) AS Max_Lkpmp_PH,
(select format(nw_uvttlflw,7) from tag_history 
  where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60)
  Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59' order by nw_bpdcl2 limit 1) as Min_GPM, 
  format(min(nw_bpdcl2),7) as Min_Chlorine_Residual,
(select format(nw_uvttlflw,7) from tag_history
  where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60)
  Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59' order by nw_bpdcl2 desc limit 1) as Max_GPM,
  format(max(nw_bpdcl2),7) as Max_Chlorine_Residual from tag_history 
  where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60) 
  Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59'

そして、24時間の1分あたりのガロンフロー(nw_uvttlflw)の合計を返す次のクエリを追加できるかどうかを確認しています。上記のクエリに追加しようとしている(合計クエリ)クエリを単独で実行すると、必要なものが正確に返されます。私の現在の問題は、上記のクエリでネストしようとしているため、元の大きなクエリの最後の列として合計(nw_uvttlflw)が返されます。(私は長いクエリに精通していないため、ネストされたSQLクエリのフォーマットの品質が不足していることをお詫びします)

私が追加しようとしているクエリはここにあります:

select format(sum(nw_uvttlflw),7) as Total_flow from tag_history
where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60) 
Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59';

お手数をおかけしますが、よろしくお願いいたします。私はしばらくの間これをつなぎ合わせようとしてきましたが、私の構文を正しく理解することができません。ありがとう

-マーク

4

1 に答える 1

0

これはあなたが探しているものですか?

select min(nw_lpdTEMP) AS Min_Lkpmp_Temp_C,
  max(nw_lpdPH) AS Max_Lkpmp_PH,
  (select format(nw_uvttlflw,7) from tag_history 
    where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60)
    Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59' order by nw_bpdcl2 limit 1) as Min_GPM, 
  format(min(nw_bpdcl2),7) as Min_Chlorine_Residual,
  (select format(nw_uvttlflw,7) from tag_history
    where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60)
    Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59' order by nw_bpdcl2 desc limit 1) as Max_GPM,
  format(max(nw_bpdcl2),7) as Max_Chlorine_Residual,
  (select format(sum(nw_uvttlflw),7) from tag_history
    where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60) 
    Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59') as Total_flow
from tag_history 
where from_unixtime(floor(unix_timestamp(t_stamp)/60)*60) 
  Between '2012-07-01 00:00:00' AND '2012-07-01 23:59:59'
于 2012-08-16T19:03:24.963 に答える