比如表News有title字段,
id title
1 IBM推社交网软件 助企业迎移动办公时代
2 IT业9大最糟糕CEO决策:&雅虎&拒绝微软收购在列
3 &乔布斯&的10大管理诫律
4 互联网免费增值模式完整指南:优秀产品是关键
5 美国软件公司Guidewire计划上市融资1亿美元
6 分析称亚马逊平板业务将威胁&苹果&
7 知名&程序员&云风辞职创业我需要提取&..&内的字符,并返回一个逗号分隔的文本。例如以上例子应该返回:雅虎,乔布斯,苹果,程序员
返回的文本不能重复.-------------
mysql版发了同样的帖子,一齐领分吧.
id title
1 IBM推社交网软件 助企业迎移动办公时代
2 IT业9大最糟糕CEO决策:&雅虎&拒绝微软收购在列
3 &乔布斯&的10大管理诫律
4 互联网免费增值模式完整指南:优秀产品是关键
5 美国软件公司Guidewire计划上市融资1亿美元
6 分析称亚马逊平板业务将威胁&苹果&
7 知名&程序员&云风辞职创业我需要提取&..&内的字符,并返回一个逗号分隔的文本。例如以上例子应该返回:雅虎,乔布斯,苹果,程序员
返回的文本不能重复.-------------
mysql版发了同样的帖子,一齐领分吧.
解决方案 »
- 深入理解SQL Server查询优化器–构造执行计划(PART II)
- 请大家帮我看一下这个SQL查询为什么是这样写的:“查询至少购买了01号客户购买的所有产品的客户号”?
- SQLSERVER老大们帮帮忙~ MSDN上关于SQL SERVER里SQL的部分在哪? 有帖必结!
- 从字符串转换为 datetime 时发生语法错误。
- left join 后的表多条记录.取1.
- 计算日期时间碰到的疑难问题
- 如何在SQL2000 中实现在结果集中加一个表示排名的列 下面是我的SQL
- 有谁会写这道题的SQL语句(比较难)
- 有谁用过erwin设计数据库的啊,那些存储过程怎么生成的啊!
- 怎样用Insert语句往一个Image类型的字段里插入值?
- 求教一条sql
- 求SQL语句:删除表A中与表B中相同数据
这里是MS sql,用MS sql写的代码可能不兼容
create table t
(
id int,
title nvarchar(100)
)insert t
select 1,'IBM推社交网软件 助企业迎移动办公时代' union all
select 2, 'IT业9大最糟糕CEO决策:&雅虎&拒绝微软收购在列' union all
select 3, '&乔布斯&的10大管理诫律' union all
select 4, '互联网免费增值模式完整指南:优秀产品是关键' union all
select 5, '美国软件公司Guidewire计划上市融资1亿美元' union all
select 6, '分析称亚马逊平板业务将威胁&苹果&' union all
select 7, '知名&程序员&云风辞职创业' declare @sql varchar(8000)
;with cte as (
select substring(substring(title,CHARINDEX('&',title)+1,LEN(title)-CHARINDEX('&',title)+1),0,CHARINDEX('&',substring(title,CHARINDEX('&',title)+1,LEN(title)-CHARINDEX('&',title)+1))) AS title from t where patindex('%&%&%',title) > 0 )select @sql=isnull(@sql+',','')+ title from cte
select @sql as titledrop table t
-------------------------------title--雅虎,乔布斯,苹果,程序员
create table t
(
id int,
title nvarchar(100)
)insert t
select 1,'IBM推社交网软件 助企业迎移动办公时代' union all
select 2, 'IT业9大最糟糕CEO决策:&雅虎&拒绝微软收购在列' union all
select 3, '&乔布斯&的10大管理诫律' union all
select 4, '互联网免费增值模式完整指南:优秀产品是关键' union all
select 5, '美国软件公司Guidewire计划上市融资1亿美元' union all
select 6, '分析称亚马逊平板业务将威胁&苹果&' union all
select 7, '知名&程序员&云风辞职创业' declare @sql nvarchar(max)
;with cte as (
select substring(substring(title,CHARINDEX('&',title)+1,LEN(title)-CHARINDEX('&',title)+1),0,CHARINDEX('&',substring(title,CHARINDEX('&',title)+1,LEN(title)-CHARINDEX('&',title)+1))) AS title from t where patindex('%&%&%',title) > 0 )select @sql=isnull(@sql+',','')+ title from cte
select @sql as titledrop table t-------------------------------title--雅虎,乔布斯,苹果,程序员