当前位置: 首页 > news >正文

网站开发 入门 pdf/网络开发

网站开发 入门 pdf,网络开发,网站制作的公司,扬中论坛全部帖子for xml path是将结果集以XML的格式返回;用的比较多的地方,就是group by之后,拼接字符串返回举个例子,看一下for xml path的神奇之处;create table subjects(name varchar(20),subject varchar(20)) insert into subje…

for xml path是将结果集以XML的格式返回;

用的比较多的地方,就是group by之后,拼接字符串返回

举个例子,看一下for xml path的神奇之处;

create table subjects(name varchar(20),subject varchar(20))
insert into subjects
select '小红' ,'高数' 
union all 
select  '小红','音乐'
union all 
select  '小明','体育'
union all 
select  '小明','武术'
union all 
select  '小明','化学'
union all 
select  '小兰','生物'

创建一张表subjects,有三个人,小红,小明和小兰,分别选修了不同的科目;

执行以下语句,查看得出的结果有什么不同。会发现:

--path后小括号跟的是行与行之间的分隔符

--列如果没有拼接,则列名就是列之间的分隔符

--path后小括号跟的是行与行之间的分隔符
--列如果没有拼接,则列名就是列之间的分隔符
select subject from subjects for xml path;
select subject as sb from subjects for xml path('aaa');
select ','+subject from subjects for xml path('');

f2dbf07dd7659ccb06eb41a48014631c.png

a42cce0fc5547508ef95c9072ede6369.png

所以,写select 语句返回拼接字符串的时候,只需要将path后跟(‘’),select后添加列分割符号,如单引号,分号等就可以了;

select s.name,( select ','+b.subject from subjects as b where b.name=s.name for xml path(''))
from subjects as s
--group by name

9e7967958e7a89c239310f03f15f19e2.png

select ','+b.subject 或者select b.subject+','

可以看出subjects中有多余的分隔符,可在前可在后。所以,去掉分隔符可以使用left,right,stuff函数。

--使用stuff去除首位分隔符
select s.name,stuff(( select ','+b.subject from subjects as b where b.name=s.name for xml path('')),1,1,'') as subjects
from subjects as s
group by name--使用left函数截取字符串
select name ,right(subjects,len(subjects)-1) as subjects from (
select s.name,( select ','+b.subject from subjects as b where b.name=s.name for xml path('')) as subjects
from subjects as s
group by name)as a

得出的结果一样

9d6c075c29ce704a05f197d309df1e78.png

延伸:STUFF结合FOR XML PATH可以用来拼接JSON字符串,

select '['+ stuff((select ',{"name": "' + name + '","subjects": "' + subject + '"}'
from subjects for xml path('')),1,1,'') +']'

结果如下:

[{"name": "小红","subjects": "高数"},
{"name": "小红","subjects": "音乐"},
{"name": "小明","subjects": "体育"},
{"name": "小明","subjects": "武术"},
{"name": "小明","subjects": "化学"},
{"name": "小兰","subjects": "生物"}]

http://www.jmfq.cn/news/5188915.html

相关文章:

  • 做网站充值犯法吗/seo外链怎么做
  • 合肥专门做网站/关键词在线试听
  • 重庆网站建设技术托管/今日热搜榜
  • 北京网站建设著名公司/优秀营销软文范例800字
  • 找公司开发网站/精准营销的概念
  • 网站搭建是哪个岗位做的事儿/seo对网络推广的作用是
  • wordpress支持php7吗/南宁seo产品优化服务
  • wordpress网站放icp/广州网站快速排名优化
  • 十堰响应式网站建设/郑州网站优化培训
  • 网站建设措施/各大网址收录查询
  • 广州市公司网站建设品牌/系统优化软件有哪些
  • 海南房产网站建设/免费查权重工具
  • 南京做网站xjrkj/指数基金定投怎么买
  • 苏州新区网站制作公司/站长推荐入口自动跳转
  • 潮汕美食网站怎么做/营销公司
  • dwcc2017做网站教程/app开发定制
  • 苹果cms做网站/公司网站制作需要多少钱
  • 桂林北站到龙脊梯田/百度快速排名优化技术
  • 伍佰亿网站怎样/网页设计教程
  • 最优网络做网站骗/广州抖音推广
  • wordpress 回车换行/谷歌seo代运营
  • 做旅游网站的社会效益可行性/日结app推广联盟
  • 自己做网站必须要学哪些/河南平价的seo整站优化定制
  • 福建有没有网站做一件代发/长沙关键词快速排名
  • 手机网站有免费做的吗/社群营销方案
  • 门户网站什么意思/网络推广怎么赚钱
  • 商城网站制作/人工智能培训班收费标准
  • 做网站关键词/高端网站建设深圳
  • 企业网站备案意义/湖南正规关键词优化报价
  • 做1元夺宝网站挣钱吗/网络策划方案