两个表之间进行连接查询 暂定为主表和附表 但是附表是不确定的 它是由主表当中一个字段的值

确定的也就是说主表中每读一条记录都将与不同的表进行连接查询,请问这样sql语句该如何写如何在sql中判断吓一跳记录该与哪个表连接呢?... 确定的 也就是说 主表中每读一条记录都将与不同的表进行连接查询,请问这样sql语句该如何写 如何在sql中判断吓一跳记录该与哪个表连接呢? 展开
 我来答
frogley
2013-08-28 · TA获得超过1854个赞
知道小有建树答主
回答量:1008
采纳率:50%
帮助的人:1078万
展开全部

用动态sql可以做。

假设主表为tt_A,其数据如下。其中id是主键,table_name指明了附表名称。

附表tt_B数据如下。其中id用来连接主表

附表tt_C的结构与tt_B相同,但数据不同。

那么通过下面的语句:

declare @sql varchar(8000);
set @sql='';
select @sql=@sql + 'union all 
select a.id,'+table_name+'.value from tt_A a 
inner join '+table_name+' on a.id='+table_name+'.id where a.table_name='''+table_name+''' '
from (select distinct table_name from tt_A) b
select @sql='select * from ('+stuff(@sql,1,9,'')+') c order by id'
--select @sql
exec(@sql)

得到的查询结果为:

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式