作者koehie (开喜乌龙茶)
看板Database
标题Re: [SQL ] 子查询并成一栏
时间Wed Aug 31 01:05:59 2011
※ 引述《cutecpu (可爱中央处理器)》之铭言:
: select t1.ID,t1.NAME,
: stuff(
: (
: select ',' + city
: from B t2
: where t2.ID = t1.ID
: for xml path('')
: ),1,1,''
: ) as city
: from A t1
: ※ 引述《fr730149 ()》之铭言:
: : 非常谢谢您的回答,照你所撰写的语法,似乎有误…
: : 所以我将您的语法,改写成以下,就可顺利执行:
: : -----------------------------------------------
: : select t1.ID,t1.NAME,(
: : select city + ','
: : from B t2
: : where t2.ID = t1.ID
: : for xml path('')
: : ) as city
: : from A t1
: : -----------------------------------------------
: : 但现在又出现一个问题,找出来的资料都会在,字尾加上','
: : 如下栏city所示:
: : ID name city
: : 1 Mark Taipei,Tainan,
: : 2 Mary Taipei,
: : 3 Leo ChangHua,Kaohsiung,
: : 目前我的作法是在,程式端将最後一个','删掉。
: : 那麽是否有方法:单用SQL语法将','删除
请问如果资料库是使用 Oracle 8i 呢 ? 同样的需求要如何解决呢 ?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.233.180.75
※ 编辑: koehie 来自: 118.233.169.131 (08/31 22:27)