如何在一列中选择多个相同的列

时间:2013-07-30 09:54:59

标签: sql-server sql-server-2008

我有两张表:

  1. 影院(ID,TNAME,taddress)
  2. 电影(ID,MNAME,TID)。
  3. 在影院表中有一条id为1的记录,如:

     1, Big Cinema, abc. 
    

    在moive表中有3条记录如:

      

    1)1,比赛,1   2)2,BMB,1   3)3,SOTY,1。

    现在我想只用一次和三部电影来播放剧院名称。

2 个答案:

答案 0 :(得分:4)

这是你需要的吗?

select [id],[tname],
    stuff((select ',' + CAST(t2.[mname] as varchar(10))
    from movie t2 where t1.[id] = t2.[tid]
    for xml path('')),1,1,'') SomeColumn
from theatre t1
group by [id],[tname]

<强> SQL Fiddle

答案 1 :(得分:0)

如果您的意思是连接一列中的某些列,可以尝试

Select t.tname + ' ' + t.taddress as tNameAdress, m.mname 
from movie m inner join theatre t on m.tid = t.id