Sql server SQL中的联合表
我对sql有点不了解,所以这对我来说是新的东西 我从两个表中选择数据并进行合并Sql server SQL中的联合表,sql-server,Sql Server,我对sql有点不了解,所以这对我来说是新的东西 我从两个表中选择数据并进行合并 declare @randomlinkscards table (cardTitleinfo nvarchar(max), cardIdinfo bigint ) declare @randomlinksvideos table ( videotitle nvarchar(max), videoid bigint ) insert into @r
declare @randomlinkscards table
(cardTitleinfo nvarchar(max),
cardIdinfo bigint
)
declare @randomlinksvideos table
(
videotitle nvarchar(max),
videoid bigint
)
insert into @randomlinkscards(cardTitleinfo,cardIdinfo) select top 1 cardTable.cardTitle,cardTable.CardId from cardTable where is_active='True' order by newid()
insert into @randomlinksvideos(videotitle,videoid) select top 1 videos.title,videos.video_id from videos where is_active='True' order by newid()
select videotitle,videoid from @randomlinksvideos union all select * from @randomlinkscards
因为它为我提供了输出-
从图像中可以看到它返回两行
一行视频表
一行卡片表
然而,数据是按我所希望的方式来的,但使用两行管理数据是一个持续存在的问题
我想在一行中管理所有数据。如何尝试在一行中获取此数据这只是您问题的解决方案,但如果您希望显示两个表中的数据,则它们之间应该有一个公共列,您可以通过join获得结果
SELECT (SELECT videotitle
FROM @randomlinksvideos)videotitle,
(SELECT videoid
FROM @randomlinksvideos)videoid,
(SELECT cardTitleinfo
FROM @randomlinkscards) cardTitleinfo,
(SELECT cardIdinfo
FROM @randomlinkscards) cardIdinfo
展示你的期望output@Ganesh_Devlekar,我的预期输出是这两行中的一行,我想您需要分别两行。。。。??然后只需从@randomlinksvideos中删除UNIONALL
选择videotitle、videoid;从@randomlinkscards中选择*代码>@Ganesh_Devlekar,但这显示了来自两个不同表的结果,我希望使用一行进行联合,使用预期输出的更多行会更好