表:A(time,siteid,pac)
其中time是datetime型別,pac是float型別
我要查詢每天所有siteid的在當天所有時間點的avg(pac)出現最大值的時間,請問該怎么寫SQL?
我原先的SQL是這樣的:
select t1.time,max(apac) as mpac from (select time,avg(Pac) as apac from A where time>="2017-09-20" and time<="2017-10-30" group by time) t1 group by DATE_FORMAT(time,"%Y-%m-%d");
可是這樣查詢出來的時間不對,是分組后每天的開始時間
我應該怎么改
uj5u.com熱心網友回復:
select *from A a1
where not exits (select 1 from A a2 where date(a1.time)=date(a2.time) and a1.siteid<a2,siteid )
order by a1.time desc;
uj5u.com熱心網友回復:
a1,a2是什么東西啊,買看明白
uj5u.com熱心網友回復:
a1,a2是表的別稱,因為要連續用兩次A表,所以要起個別稱a1,a2,來區分
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/106441.html
標籤:MySQL
上一篇:請各位大俠,幫忙看一下下面觸發器Before Insert 陳述句是否會引起死鎖問題?
下一篇:mysql 資料匯出格式優化
