首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

SQLITE3,怎么将多行合成一行,用SQL语句?

2012-06-02 
SQLITE3,如何将多行合成一行,用SQL语句???如下:5行合成一行1 深灰色 2 驼色 3 暗紫色 4 灰色5 21-5K013合

SQLITE3,如何将多行合成一行,用SQL语句???
如下:5行合成一行

1 深灰色 
2 驼色 
3 暗紫色 
4 灰色
5 21-5K013  



合成后: 深灰色,驼色,暗紫色,灰色,21-5K013  
 

[解决办法]

SQL code
create table t(ta int ,tb char(10))insert into t select 1,'深灰色 ' union  select 2,'驼色' unionselect 3,'暗紫色' union select 4,'灰色' unionselect 5,'21-5K013'SELECT       MAX(CASE  WHEN ta=1 THEN tb ELSE '0' END) AS '列1',      MAX(CASE  WHEN ta=2 THEN tb ELSE '0' END) AS '列2',      MAX(CASE  WHEN ta=3 THEN tb ELSE '0' END) AS '列3',      MAX(CASE  WHEN ta=4 THEN tb ELSE '0' END) AS '列4',      MAX(CASE  WHEN ta=5 THEN tb ELSE '0' END) AS '列5'FROM t列1         列2         列3         列4         列5---------- ---------- ---------- ---------- ----------深灰色        驼色         暗紫色        灰色         21-5K013  (1 行受影响)
[解决办法]
将行并成一个字段以换行符分开

SELECT STUFF((
SELECT
CHAR(10)+[r]
FROM t
FOR XML PATH('')), 1, 1, '')
[解决办法]
http://technet.microsoft.com/zh-cn/library/ms177410.aspx
sql server 使用 PIVOT 和 UNPIVOT

热点排行