日期:2014-05-18  浏览次数:20520 次

select表A,但显示字段名的时候是显示 表B记录中的 中文名字
请教下:
有个表A,中有字段ID,name,I/O,remark字段
表B有两个字段eng_Name,chi_name
                                ID           ID
                                name       名字  
                                I/O         输入/输出    
                                remark   备注

我想要写个视图select   表A,但是显示字段名的时候是显示中文名字!

大家有好的什么方法?!请帮下忙

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

create table ta(name varchar(2),[I/O] int,[remark] int)
insert ta select 'a ',1,1 union all
select 'b ',2,2

create table tb(eng_Name varchar(10),chi_name varchar(10))
insert tb select 'name ', '名字 '
insert tb select 'I/O ', '输入/输出 '
insert tb select 'remark ', '备注 '

declare @sql varchar(1000)
select @sql=isnull(@sql+ ', ', ' ')+quotename(chi_name)+ '= '+quotename(eng_Name)
from tb
set @sql= 'select '+@sql+ ' from ta '
exec(@sql)

名字 输入/输出 备注
---- ----------- -----------
a 1 1
b 2 2

存储过程:
create proc test
as
declare @sql varchar(1000)
select @sql=isnull(@sql+ ', ', ' ')+quotename(chi_name)+ '= '+quotename(eng_Name)
from tb
set @sql= 'select '+@sql+ ' from ta '
exec(@sql)

go
exec test