日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
MSSQL實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)的方法(mssql列轉(zhuǎn)行)

MSSQL實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)的方法

Autonomous Database 是 Oracle 推出的一種新型云數(shù)據(jù)庫(kù),可以快速和輕松地管理企業(yè)數(shù)據(jù)。MSSQL是微軟發(fā)布的一款關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),可以使用T-SQL、SSIS等多種方式實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)換。本文將介紹MSSQL實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)的一種方法。

以下是一個(gè)示例,我們需要將表格中的數(shù)據(jù)從列轉(zhuǎn)換成行:

表格:

| name | age |

|——-|—–|

| Mike | 20 |

| tony | 25 |

| Alisa | 30 |

我們可以使用以下T-sql語(yǔ)句將其轉(zhuǎn)換為行:

“`sql

SELECT Name, Age FROM

(SELECT name,

SUBSTRING_INDEX(

CONCAT(name, ‘,’, age), ‘,’, -1

) Age

FROM testTable

) AS S


輸出:

| Name | Age |
|-------|-----|
| Mike | 20 |
| Tony | 25 |
| Alisa | 30 |

以上這種方法使用CONCAT函數(shù)將多個(gè)列的數(shù)據(jù)連接起來(lái),生成一個(gè)字符串,再使用SUBSTRING_INDEX函數(shù)取出想要的列的數(shù)據(jù)。

除了上面介紹的T-SQL方法外,我們還可以使用SSIS實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)。

1. 首先新建一個(gè)SSIS工程,然后拖入Data Flow Task,將數(shù)據(jù)源和目標(biāo)連接起來(lái)。
2. 然后添加一個(gè)Derived Column節(jié)點(diǎn)Let, 在Expression中接入以下代碼:
```sql
[Name] + ", "+ [Age]

設(shè)置Name新列的數(shù)據(jù)類型為String,運(yùn)行該步驟后,就實(shí)現(xiàn)了列信息拼接:

| Name | Age | Name_New|

|——-|—–|———|

| Mike | 20 | Mike, 20|

| Tony | 25 | Tony, 25|

| Alisa | 30 | Alisa, 30|

3. 然后添加另一個(gè)Derived Column節(jié)點(diǎn),在Expression中接入以下代碼:

“`sql

(DT_STR,50,1252)SUBSTRING(Name_New,0,FINDSTRING(Name_New, “,”,1) -1)


運(yùn)行該步驟后,就可以實(shí)現(xiàn)從拼接后的字段中依據(jù)逗號(hào)分隔取出列信息:

| Name | Age | Name_New| Name_New1 |
|-------|-----|---------|------------|
| Mike | 20 | Mike, 20| Mike |
| Tony | 25 | Tony, 25| Tony |
| Alisa | 30 | Alisa, 30| Alisa |

4. 最后利用Conditional Split節(jié)點(diǎn)將Name_New1列的值重新拆分,將Name和Age分別輸出到不同的目標(biāo)節(jié)點(diǎn),就實(shí)現(xiàn)將列信息行數(shù)據(jù)的轉(zhuǎn)換。

經(jīng)過(guò)上述步驟,我們就可以實(shí)現(xiàn)用MSSQL實(shí)現(xiàn)列信息轉(zhuǎn)換成行信息的目的。另外,還可以使用PIVOT、UNPIVOT相關(guān)函數(shù)和其他一些技巧來(lái)實(shí)現(xiàn)同樣的效果。

總之,MSSQL為我們提供了多種實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)的方法,如T-SQL、SSIS等,尤其是SSIS,能極大地方便我們數(shù)據(jù)處理的工作。

香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。


網(wǎng)頁(yè)名稱:MSSQL實(shí)現(xiàn)列數(shù)據(jù)轉(zhuǎn)換行數(shù)據(jù)的方法(mssql列轉(zhuǎn)行)
路徑分享:http://m.5511xx.com/article/djsiigs.html