SQL行轉列兩種常用寫法

2021-10-10 23:59:32 字數 1262 閱讀 5640

if object_id(

'tempdb..#lsb1')is

notnull

drop

table

#lsb1

create

table

#lsb1

( a1 varchar(50

),a2 varchar(50

),a3 varchar(50

))insert

into

#lsb1 values('張三','90','數學')

insert

into

#lsb1 values('張三','85','語文')

insert

into

#lsb1 values('張三','82','物理')

insert

into

#lsb1 values('李四','95','數學')

insert

into

#lsb1 values('李四','90','語文')

insert

into

#lsb1 values('李四','85','物理')

會將各欄位合併輸出,不算嚴格意義上的行轉列,比較適合資料的傳輸、轉json等方式

要有固定的值域,將a3作為列名(a3要有固定值域),a2作為a3列的值

select

*from

#lsb1

pivot

(max

(a2)

for a3 in

([數學]

,[語文]

,[物理]

這兩種平時用的較多,各有優點

Postgresql 行轉列兩種簡單方法

create table tb student score name varchar course varchar score int insert into tb student score values 張三 數學 83 insert into tb student score values 張...

flume兩種寫法

1.全寫 bin flume ng agent conf conf name a1 conf file job flume netcat logger.conf dflume.root.logger info,console 2.簡寫 bin flume ng agent n a1 c conf f...

mysql行轉列的兩種方法

建表語句 create table tb 姓名 varchar 10 課程 varchar 10 分數 int insert into tb values 張三 語文 74 insert into tb values 張三 數學 83 insert into tb values 張三 物理 93 i...