當前位置:首頁 » 編程語言 » sql語句分組查詢前n個最大值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句分組查詢前n個最大值

發布時間: 2023-01-31 10:54:20

sql查詢取分組最大值

selectt1.分類,t1.商品名稱,table.庫存,t1.更新時間

from (

select 分類,商品名稱,max(更新時間) 更新時間 from table

group by 分類,商品名稱

) t1

inner join table on t1.分類=table.分類 and t1.商品名稱=table.商品名稱 and t1.更新時間

=table.更新時間

(1)sql語句分組查詢前n個最大值擴展閱讀:

關於SQL最大值查詢語句的記錄

SELECT

bsnum,

STATE AS FILE_STATE

FROM

FILE_RECORD r

WHERE

STATE =(

SELECT

MAX(STATE)

FROM

FILE_RECORD

WHERE

bsnum = r.bsnum

);

小技巧:有時需要測試sql語法但又覺得創建表麻煩,可以使用創建一個臨時表,如下:

select id, count(t.id) from

(

select 1 as id, 2 as age, 'F' as sex from al union

select 2 as id, 2 as age, 'M' as sex from al union

select 3 as id, 3 as age, 'F' as sex from al union

select 4 as id, 4 as age, 'M' as sex from al

)t

⑵ 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語句:如何查詢最大的前3個值

查詢最大的前3個值的方法及編寫方式

⑷ sql語言 怎麼求每組最大,就是用group by 分組後,求每組某列最大

在分組中使用max()函數即可。

例圖中表格:

如果是最小,則可以使用 min()函數

⑸ sql如何求分組計數之後計數的最大值

插入測試記錄:

[sql] view plain

insertintostudentsvalues('數學','Jack','Tianjin',80)

insertintostudentsvalues('數學','Jordan','Tianjin',80)

insertintostudentsvalues('數學','James','Beijing',55)

insertintostudentsvalues('英語','Jack','Tianjin',90)

insertintostudentsvalues('英語','Jordan','Tianjin',60)

insertintostudentsvalues('英語','James','Beijing',100)

insertintostudentsvalues('語文','Jack','Tianjin',60)

insertintostudentsvalues('語文','Tom','Tianjin',77)

insertintostudentsvalues('語文','Jordan','Tianjin',68)


想要抓取每個科目第一名的整條信息,可以使用Row_number()函數:

select*

from(

selectcourse,stu_name,city,score,ROW_NUMBER()over()asrn

fromstudents

)a

wherea.rn<=1;

⑹ SQL Server中如何分組查詢最大值

SQL> with a as (select 1 a,0 b,'c1' c,'d1' d from al
2 union
3 select 1 a,1 b,'c2' c,'d2' d from al
4 union
5 select 1 a,3 b,'c3' c,'d3' d from al
6 union
7 select 4 a,0 b,'c4' c,'d4' d from al
8 union
9 select 5 a,1 b,'c5' c,'d5' d from al
10 union
11 select 5 a,2 b,'c6' c,'d6' d from al
12 union
13 select 6 a,1 b,'c7' c,'d7' d from al
14 union
15 select 6 a,4 b,'c8' c,'d8' d from al
16 )
17 SELECT A,B,C,D FROM
18 (select A,B,C,D,ROW_NUMBER()OVER(PARTITION BY A ORDER BY A,B DESC) RN from A)
19 WHERE RN=1
20 /

A B C D
---------- ---------- -- --
1 3 c3 d3
4 0 c4 d4
5 2 c6 d6
6 4 c8 d8

SQL>

⑺ SQL如何取得一個列中前幾個最大值

select top n * from 表 order by 列名 desc
取幾n為幾