『壹』 想把sql中某一列按每十行進行分組求平均值,再把所得的平均值保存在該表新建的一列中,請問如何解決。
註:先把行號查詢出來,通過行號分組,計算合計。修改條件是以行號在每組的行號的范圍之內。至於顯示在其他表,你自己想吧!
update 厚度表 set 平均厚度2=
(
select round(sum(平均厚度)/10)
from
(select 厚度表.*,rownum from 厚度表) t1 group by trunc(rownum/10)
) where
rownum <(select max(rownum) as maxrownum from
(select 厚度表.*,rownum from 厚度表) t1 group by trunc(rownum/10)
)) and >=
(select min(rownum) as minrownum from
(select 厚度表.*,rownum from 厚度表) t1 group by trunc(rownum/10)
))
『貳』 sql 取分組 最小值
select USERTYPE from CONFIG_USER group by USERTYPE ORDER BY USERTYPE DESC
先分組再排序 取第一個就行了
『叄』 如何用SQL語句在表中添加一行記錄分別是上面各列的平均值(或最大最小值)
平均值:
insert into table
select AVG(列1),AVG(列2),.... from table
最大值:
insert into table
select MAX(列1),MAX(列2),.... from table
最小值:
insert into table
select MIN(列1),MIN(列2),.... from table
『肆』 mysql中求平均值最高,或者count()最高最小等等……是有分組的。求教,謝謝。
給你舉個例子,你自己按照你所在當前表的情況來進行查詢。
例如:
select 列1 avg(列2) as xz from 表 group by 列1 order by xz desc ;
解釋:
avg()函數是求某列的平均值,group by是對某列分組,按照SQL標准,分組要和聚合函數一起配合使用才有意義[雖然在mysql中不會報錯]。order by xz desc表示的是對xz進行降序,就可以把最高的平均值算出來。
『伍』 sql語句,同時查詢某記錄的平均值,最大值,最小值及最大值時間,最小值時間。
select 人名,avg(數據1),avg(數據2),max(數據1),min(數據2)
from 表 group by 人名
這樣可以查出,除 數據1時間 和 數據2時間 外的欄位,你這連個測試數據都沒有,根本就沒辦法分析你的問題,你既然 取了max(數據1),但又要查詢 數據1時間,那你這個 數據1時間 到底想要查的是那個數據1 對應的時間。
『陸』 SQL分組查詢最大值最小值
查詢語句參考如下:
select
UserName,--
Convert(char(8),dealTm,112) as date,--日期
min(dealTm) as earliestTime ,--最大
max(dealTm) as latestTime--最小
from t2
group by Convert(char(8),dealTm,112) ,UserName
『柒』 請教sql分組後取每組最小值的問題
在分組中使用max()函數即可。例圖中表格:按b列分組,求D列最大值:select b,max(d) from a group by b如果是最小,則可以使用 min()函數
『捌』 sql 查詢一行內幾列的平均值,最大值,最小值,怎麼寫
oracle的話直接用greatest函數,sql server的話照這么寫:
select t1.name, max(t1.a) maxnum,min(t1.a) minnum,avg(t1.a) avgnum from
(select name,num1 a from tb1
union all
select name,num2 a from tb1
union all
select name,num3 a from tb1
union all
select name,num4 a from tb1
union all
select name,num5 a from tb1
union all
select name,num6 a from tb1
union all
select name,num7 a from tb1) t1
group by t1.name;
測試數據:
create table tb1(name varchar(50),num1 int,num2 int,num3 int,num4 int,num5 int,num6 int,num7 int)
insert into tb1 select 'Tom',1,2,6,7,9,0,3
insert into tb1 select 'Jacky',7,6,5,4,3,2,1
結果:
name maxnum minnum avgnum
Jacky 7 1 4
Tom 9 0 4
『玖』 SQL 語句 求兩個分組的平均值
你好:select avg(writtenExam),avg(labExam) from tablename;
求平均值得話用avg函數。
『拾』 SQL語句優化-關於分組求平均值
試試我寫的這個呢:
select 帳戶號,avg(月消費) as 月均消費
from (select 帳戶號,月,sum(錢) as 月消費
from 賬單 group by 帳戶號,月) as 月匯總表
where 帳戶號=1111
group by 帳戶號
思路就是:先查出一個月匯總表,再從此數據集中用Avg()函數,當然不用Avg()函數的話換成 「sum(月消費)/count(月) as 月均消費」 也行。
要注意:AVG、COUNT、MAX 和 MIN 忽略空值,而 COUNT(*) 不忽略。
GoodLuck!