當前位置:首頁 » 編程語言 » sql表分組

sql表分組

發布時間: 2022-02-24 19:19:48

A. sql如何多表分組統計一起顯示

這樣改試一下:
select * from (
SELECT qw, COUNT(qw) AS a1 FROM mrmxb GROUP BY qw union
SELECT bw, COUNT(bw) AS a1 FROM mrmxb GROUP BY bw union
SELECT sw, COUNT(sw) AS a1 FROM mrmxb GROUP BY sw union
SELECT gw, COUNT(gw) AS a1 FROM mrmxb GROUP BY gw ORDER BY 2)derivedtbl

看行不行。

B. 使用sql分組並且查詢出多張表

--建表
CreateTableT
(
idintidentity(1,1),
CreateDateDatetime
)

--插入數據
insertintoT(CreateDate)values('2014-05-01')
insertintoT(CreateDate)values('2015-06-02')
insertintoT(CreateDate)values('2016-07-03')
insertintoT(CreateDate)values('2014-08-04')
insertintoT(CreateDate)values('2014-09-05')
insertintoT(CreateDate)values('2015-10-06')
insertintoT(CreateDate)values('2016-10-04')
insertintoT(CreateDate)values('2014-12-08')

--查詢
Declare@sqlVarchar(8000)=''
Select@sql=@sql+'Select*FromTWhereyear(createdate)='+Cast(YAsVarchar(4))+';'
From
(
SelectDistinctYEAR(CreateDate)AsYFromT
)s
exec(@sql)

--如果需要生成新的表,這樣就可以了
Declare@sqlVarchar(8000)=''
Select@sql=@sql+'Select*into['+Y+']FromTWhereyear(createdate)='+Y+';'
From
(
SelectDistinctCast(YEAR(CreateDate)AsVarchar(4))AsYFromT
)s
exec(@sql)


C. 怎樣將SQL中的表按照分組排列

http://..com/question/305464467.html
一樣的問題
參看上面鏈接那個吧

D. sql 分組統計

--SQL SERVER 2000 動態SQL。
declare @sql varchar(8000)
set @sql = 'select 姓名 '
select @sql = @sql + ' , max(case 課程 when ''' + 課程 + ''' then 分數 else 0 end) [' + 課程 + ']'
from (select distinct 課程 from tb) as a
set @sql = @sql + ' , cast(avg(分數*1.0) as decimal(18,2)) 平均分 , sum(分數) 總分 from tb group by 姓名'
exec(@sql)

普通行列轉換
問題:假設有張學生成績表(tb)如下:
姓名 課程 分數
張三 語文 74
張三 數學 83
張三 物理 93
李四 語文 74
李四 數學 84
李四 物理 94
想變成(得到如下結果):
姓名 語文 數學 物理
---- ---- ---- ----
李四 74 84 94
張三 74 83 93
-------------------
*/
create table tb(姓名 varchar(10) , 課程 varchar(10) , 分數 int)
insert into tb values('張三' , '語文' , 74)
insert into tb values('張三' , '數學' , 83)
insert into tb values('張三' , '物理' , 93)
insert into tb values('李四' , '語文' , 74)
insert into tb values('李四' , '數學' , 84)
insert into tb values('李四' , '物理' , 94)
go

--SQL SERVER 2000 靜態SQL,指課程只有語文、數學、物理這三門課程。(以下同)
select 姓名 as 姓名 ,
max(case 課程 when '語文' then 分數 else 0 end) 語文,
max(case 課程 when '數學' then 分數 else 0 end) 數學,
max(case 課程 when '物理' then 分數 else 0 end) 物理
from tb
group by 姓名

E. SQL多表分組查詢

selectt1.*,t2.English
from
(selecta.id,a.name,a.address,MAX(b.Chinese)Chinesefromstudenta,Scoreb
wherea.id=b.idgroupbya.id,a.name,a.address)t1,
scoret2
wheret1.id=t2.idandt1.Chinese=t2.Chinese

F. sql分組統計

方法和詳細的操作步驟如下:

1、第一步,創建一個測試表,詳細代碼見下圖,轉到下面的步驟。

G. sql 分組編序號

題主你已經把SQL文寫出來了,既然誰時間早排前面,那你把desc去掉就行了。

SELECT*FROM(SELECTROW_NUMBER()OVER(PARTITIONBYSUBSTRING(CONVERT(varchar(100),Time,20),0,11)ORDERBYTime)ASxh,*FROMdbo.表)T

我用的oracle資料庫,sql文如下:

SELECT*FROM(SELECTROW_NUMBER()OVER(PARTITIONBYto_char(t.time,'yyyy-mm-dd')ORDERBYTime)ASxh,t.*FROMtestt)

H. SQL 分組

select t1.name,t1.grade,sum(t2.chengji) as chengji from t1,t2 where t1.id=t2.id group by t1.name,t1.grade

I. SQL數據分組匯總

你沒說什麼資料庫,,,

提供sqlserver的方法


SELECTLEFT(c,CHARINDEX('-',c)-1),sum(d)
from表
groupbyLEFT(c,CHARINDEX('-',c)-1)

J. sql語句怎麼對一張數據表進行分組

declare @n int
declare @i int
declare @sql varcahr(2000)

select @n=count(*) from tb
group by 班級

set @i=0
set @sql=''
where @i<@n
begin
set @sql = 'create table tb'+@i+'('+
' 班級 varchar(10),成績 int)'
end
exec(@sql)

--有多少個班級,就創建多少個表,然後再用游標將各個班的成績插入到不同的表裡

熱點內容
不是安卓怎麼讓時間顯示在屏幕上 發布:2025-07-01 15:20:54 瀏覽:507
黃岩數控編程培訓 發布:2025-07-01 15:12:30 瀏覽:977
迷宮尋路演算法 發布:2025-07-01 15:12:29 瀏覽:542
微信視頻緩存目錄 發布:2025-07-01 14:58:59 瀏覽:389
vmwarelinux教程 發布:2025-07-01 14:50:33 瀏覽:498
名詞解釋預演算法 發布:2025-07-01 14:34:36 瀏覽:918
iis文件拒絕訪問 發布:2025-07-01 14:34:20 瀏覽:570
蘋果和安卓相比哪個游戲多 發布:2025-07-01 14:24:16 瀏覽:762
銳界七座買哪個配置好 發布:2025-07-01 14:14:59 瀏覽:983
svn下載linux 發布:2025-07-01 14:10:38 瀏覽:735