SQL 常用語句高階

2021-09-12 11:03:19 字數 873 閱讀 3039

1、行轉列

使用pivot()函式

select * from #mytb

pivot

(min(#mytb.尺碼 /*後列值*/) for #mytb.列名 /*需轉列*/ in ('尺碼1','尺碼2')

) as pvt

使用case  when

2、資料轉換

語法:cast (expression as data_type)

convert(資料型別,變數) ◦

示例:select  convert(nvarchar(50),getdate())

select  cast(isauto  as  int)

3、多行合併成一行

select  *  from  tmp1
查出資料如下

但是我們需要將相同id的資料合併成一條資料,可以使用stuff()函式

select  id ,

stuff(( select ',' + color

from dbo.tmp1

where dbo.tmp1.id = a.id

forxml path('')

), 1, 1, '')

from dbo.tmp1 a

group by a.id;

形成以下結果:

sql常用語句

use myoa select from delete from department where departmentid 1 insert department departmentid,departmentname values 1,技術部 update department set depa...

sql常用語句

在sqlserver,簡單的組合sp spaceused和sp msforeachtable這兩個儲存過程,可以方便的統計出使用者 資料表的大小,包括記錄總數和空間占用情況,非常實用,在sqlserver2k和sqlserver2005中都測試通過。1.exec sp spaceused 表名 sq...

sql常用語句

第一種 行列互換思想,外層group by,使用case when then 我有乙個表,有兩個字段 收費專案 唯一值 收費金額。我想用sql按收費專案不同生成不同的字段,對應值是金額。如 房租 100 水電費 50 雜費 50 生成後的格式是 房租 水電費 雜費 100 50 50 請問,如何寫這...