当前位置: 代码迷 >> Sql Server >> 请问一个SQL查询有关问题
  详细解决方案

请问一个SQL查询有关问题

热度:82   发布时间:2016-04-27 15:34:29.0
请教一个SQL查询问题?
有两个表:用户名和评论表(评论可能会有多条)
要查询出用户基本信息和所有的评论怎么写呀!
请高手指点!

            姓名         评论ID1     评论标题1     ID2           标题2           ID3           标题2
id         name         oid1           title1           oid2         title2         oid3         title3   ....


------解决方案--------------------

給你個例子,這是魚寫的


create table t2

(NO int, Name1 varchar(10), Name2 varchar(10), name3 varchar(10))
insert into t2
select 1, '北京 ', '上海 ', '南京 ' union all
select 1, '南京 ', '北京 ', '上海 ' union all
select 2, '南京 ', '武漢 ', '上海 ' union all
select 2, '武漢 ', '杭州 ', '上海 '


Create Table A
(NO Int,
context Varchar(10))
Insert A Select 1, 'aaa '
Union All Select 2, 'bbb '

Create Table B
(NO Int,
Name1 Nvarchar(20),
Name2 Nvarchar(20),
Name3 Nvarchar(20))
Insert B Select 1, N '北京 ', N '上海 ', N '南京 '
Union All Select 1, N '南京 ', N '北京 ', N '上海 '
Union All Select 2, N '南京 ', N '武漢 ', N '上海 '
Union All Select 2, N '武漢 ', N '杭州 ', N '上海 '
GO
--創建函數
Create Function F_TEST(@NO Int)
Returns Nvarchar(1000)
As
Begin
Declare @S Nvarchar(1000)
Select @S = ' '
Select @S = @S + ' ' + Name From (Select NO, Name1 As Name From B Union Select NO, Name2 As Name From B Union Select NO, name3 As Name From B ) B Where NO = @NO
Select @S = Stuff(@S, 1, 1, ' ')
Return @S
End
GO
--測試
Select
*,
dbo. F_TEST(NO) As Name
From
A
GO
  相关解决方案