當前位置:首頁 » 編程語言 » sqlserver2005分組
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlserver2005分組

發布時間: 2022-05-28 21:35:58

sql server 資料庫中,如何將分組後元素用逗號隔開並作為一條記錄

創建表及數據

createtablet1
(midint,
uidvarchar(1))
insertintot1values(1,'a')
insertintot1values(1,'b')
insertintot1values(1,'b')
insertintot1values(1,'c')
insertintot1values(1,'d')
insertintot1values(2,'a')
insertintot1values(2,'b')
insertintot1values(2,'c')
insertintot1values(2,'c')
insertintot1values(3,'a')
insertintot1values(3,'b')
insertintot1values(3,'c')
insertintot1values(3,'c')

執行

selectmid,items=stuff((select','+uidfrom(selectdistinctmid,uidfromt1)twheremid=s.midforxmlpath('')),1,1,'')
from(selectdistinctmid,uidfromt1)s
groupbymid

結果

② sql server 2005 中怎樣將查詢出的數據分組顯示

select 列名(要顯示的列名或者「*」) from 表名 group by 列名(依據此列名來分組)

③ SQL sever2005中創建分組視圖直接在管理工具下操作 怎麼設置分組的條件

create view S_G(Sno,Gavg)
as
select Sno,avg(Grade)
from SC
where Sno='你的條件'
group by Sno

④ sql中,按照某個欄位的內容進行分組,並在組內加序號

sqlserver2005及以上版本
SELECT
ROW_NUMBER()
OVER(PARTITION
BY
種類
ORDER
BY
種類)
AS
序號,*
FROM

⑤ sql 語句 分組生成數據

create table test
(bj varchar(10),xh varchar(10),id int)
insert test (bj,id) select
'02',1 union select
'02',2 union select
'03',3 union select
'03',4 union select
'03',5
go
--顯示
--sql server2000的做法(子查詢)
select bj,xh=bj+right('00'+rtrim((select count(*) from test where t.bj=bj and t.id>=id)),2),id
from test t
--sql server2005(row_number)
select bj,xh=bj+right('00'+rtrim(ROW_NUMBER()over(partition by bj order by id)),2),id
from test t

--更新
--sql server2000的做法(子查詢)
update t
set bj = (bj+right('00'+rtrim((select count(*) from test where t.bj=bj and t.id>=id)),2))
from test t
--sql server2005(row_number)
;with cte as
(
select *,rn=bj+right('00'+rtrim(ROW_NUMBER()over(partition by bj order by id)),2)
from test
)
update cte
set bj = rn

⑥ sqlserver2005分組查詢列子

select 列名a,列名B
from 表名
group by 列名a,列名B
分組一般會和函數一起使用如 SUM()函數,count()函數
select 列名a,列名B,SUM(列名C)
from 表名
group by 列名a,列名B
該語句是統計C列的數量總數

⑦ sql server 2005 中查詢一個資料庫中所有表的數據,並按表分組

可以
同時執行多條查詢語句,查出的結果是很多個表,並且按照每一個表分開的.

但是你要查出到一個表就不可以的,畢竟每個表之間的欄位個數和類型都是不一樣的.而且這樣做也沒有多少意義.

如果有對多表數據的需求,可以使用視圖,存儲過程等實現.

⑧ SQL 中如何根據只根據第一個欄位分組

使用分析函數row_number() over (partiion by ... order by ...)來進行分組編號,然後取分組標號值為1的記錄即可。目前主流的資料庫都有支持分析函數,很好用。
其中,partition by 是指定按哪些欄位進行分組,這些欄位值相同的記錄將在一起編號;order by則是指定在同一組中進行編號時是按照怎樣的順序。
示例(SQL Server 2005或以上適用):

123456
select s.* from ( select *, row_number() over (partition by [手機號] order by [店鋪]) as group_idx from table_name) swhere s.group_idx = 1

⑨ SQL Server2005裡面怎麼樣根據出生年月進行分組我想把80年之前出生和之後出生的人分成兩組,請問怎麼寫

我這里假設你那個 「出生年月」 欄位的數據類型,是 DATETIME 類型的。

select
CASE WHEN YEAR(出生年月) > 1980 THEN '80後' ELSE '80前' END AS [類型]
count(*) AS [人數]
from
table_name
group by
CASE WHEN YEAR(出生年月) > 1980 THEN '80後' ELSE '80前' END

⑩ SQL中分組短語是什麼

SQL中分組短語是:group by。

GROUP BY 語句

GROUP BY 語句用於結合合計函數,根據一個或多個列對結果集進行分組。

GROUP BY 語法

SELECT column_name, aggregate_function(column_name)FROM table_name WHERE column_name operator valueGROUP BY column_name

Group By 的使用:

1、 Group By [Expressions]:

這個恐怕是Group By語句最常見的用法了,Group By + [分組欄位](可以有多個)。在執行了這個操作以後,數據集將根據分組欄位的值將一個數據集劃分成各個不同的小組。比如有如下數據集,其中水果名稱(FruitName)和出產國家(ProctPlace)為聯合主鍵:


SELECTFruitName,ProctPlace,Price,IDASIDE,Discount
FROMT_TEST_FRUITINFO
WHERE(ProctPlace=N'china')ORDERBYIDE

這里只有在ORDER BY語句中才可以使用IDE,其他條件語句中如果需要引用列名則只能使用ID,而不能使用IDE。

以上就是Group By的相關使用說明。內容參考與網站CSDN中的「SQL語句Group By 語句小結「。