sqlQuery1:
SELECT (e.zhFname+e.zhName) as zhName,(e.enName+' '+e.enFname) as enName FROM table
顯示結果:
zhName = "林志玲"
enName = "LiYin Lin"
sqlQuery2:
SELECT (convert(nvarchar(4),系統ID) + '(' + 系統名稱 + ')') as 系統 FROM [Usys系統別資料表] WHERE 系統ID <> 0
顯示結果:
系統 = 1(內銷業務管理)
Note:
若有某一欄位型態不是字串(EX:integer ,double, etc... 日期沒試過~)
就必須 (convert(nvarchar(10),系統ID) 轉成字串
假設原本資料庫設定為 int(4) 其可表示範圍為
- 2,147,483,647 ~ 2,147,483,647
0~4,294,967,295 兩者皆為10位數
故轉字串時 就必須設 nvarchar(10) OR varchar(10)
否則會產生溢位錯誤...
參考:
select firstname+lastname from tb1;
用 + 做連接
+ (字串串連) (Transact-SQL)
CONCAT( ) 的語法
SQL Server 2012 :認識 CONCAT 字串函數
M$ sqlserver 2005
SQL 語法如何將多欄位查詢結果合併成一個字串
如何將多行查詢結果合併成單一字串?
SQL指令— CONCAT(字符串连接函数)
SQL 合并字段、拼字段、把多个数值拼写成一个字段。
===================================================
不同ROW的同一個欄位運用 FOR XML PATH 來連接成一個欄位!
資料結構:
select [pro] from yiTest.dbo.person for xml path('');
select [pro]+',' from yiTest .dbo.person for xml path('');
SELECT
(
(SELECT ','+[pro]
FROM [yiTest].[dbo].[person] t2
--WHERE t2.id = t1.id
FOR XML PATH('')
)
)as [pro]
FROM
[yiTest].[dbo].[person] t1
SELECT
(
(SELECT ','+[pro]
FROM [yiTest].[dbo].[person] t2
WHERE t2.id = t1.id
FOR XML PATH('')
)
)as [pro]
FROM
[yiTest].[dbo].[person] t1
select id,name,
(select ','+pro from yiTest .dbo.person t1 where t1.id = t2.id for xml path('')) pro
from yiTest.dbo.person t2
group by id,name
參考:
SQL SERVER 2005 以後才支援 FOR XML PATH
SQL SERVER 2012 以後微軟提供了 CONCAT函數 來實現此功能
Concatenate the values in a column in SQL Server 2000 and 2005
使用 PATH 模式
一秒看破 T - SQL 多筆欄位合併
SQL 合并多条记录为一条
[SQL]將多筆資料合併為一筆顯示(FOR XML PATH)
[SQL]將多筆資料同一欄位值合併
[SQL] 多筆資料合併為一筆
灵活运用 SQL SERVER FOR XML PATH
SQL Server 2005 “FOR XML PATH” Multiple tags with same name
[MS SQL]將多筆資料合併欄位,減少不必要的連線
將多筆相同鍵值的欄位內容合併
T-SQL多筆輸出資料合併單一欄位輸出
使用 MSSQL 打造仿 MySQL 的group_concat 函数的山寨版
SQL語法如何將直的資料做橫向的字串連結
mssql2005如何实现类似GROUP_CONCAT (my-sql) 的功能
GROUP_CONCAT In MS-SQL
Simulating group_concat MySQL function in Microsoft SQL Server 2005?
Emulating MySQL’s GROUP_CONCAT() Function in SQL Server 2005
FOR XML PATH 多筆資料合併為一筆
FOR XML PATH 多筆資料合併為一筆
其它參考:
動態將多筆資料的特定欄位依分隔符號組成字串
[SQL]利用UNION ALL整合統計合併資料
[Oracle]請問如果查詢條件無資料能否顯示筆數為 0 呢?
SQL不同TABLE相同欄位合併的方法
MS SQL多表查詢合併
SQL合併查詢?(超難)
[Oracle]多筆資料合併在同一列上
SQL2005/2008手工注入之批量爆数据for xml path
使用 PIVOT 和 UNPIVOT 讓資料多列變成一列
SQL - 使用 PIVOT
動態 PIVOT 陳述式:Dynamic PIVOT
SQL資料轉行
續:SQL 資料轉行
SQL SERVER 2000/2005 列转行 行转列
沒有留言:
張貼留言