Sql 联合查询遇到重复字段怎么办? 20
A表有字段ID,NAME,PASSWORD,TYPEB表有字段ID,NAME,Type采用以下语句查询select*fromAleftouterjoinBastont.I...
A表有字段ID,NAME,PASSWORD,TYPE
B表有字段ID,NAME,Type
采用以下语句查询
select * from A left outer join B as t on t.ID=ID where t.Type=TYPE
结果:
字段:ID,NAME,PASSWORD,ID,NAME
可见ID,NAME重复了,问如何给A表或B表重复字段使用别名或如何准确读取出A表与B表各自ID,NAME字段值?
查询环境为Sql 2008 展开
B表有字段ID,NAME,Type
采用以下语句查询
select * from A left outer join B as t on t.ID=ID where t.Type=TYPE
结果:
字段:ID,NAME,PASSWORD,ID,NAME
可见ID,NAME重复了,问如何给A表或B表重复字段使用别名或如何准确读取出A表与B表各自ID,NAME字段值?
查询环境为Sql 2008 展开
3个回答
展开全部
使用别名,可以这样:
select a.ID as aId, a.NAME as aName, a.PASSWORD as aPassword ,a.TYPE as aType,t.Id as tId,t.Name as tName,t.Type as tType from A as a left outer join B as t on t.ID=ID where t.Type=TYPE
试一下吧,希望能够帮到你哦
select a.ID as aId, a.NAME as aName, a.PASSWORD as aPassword ,a.TYPE as aType,t.Id as tId,t.Name as tName,t.Type as tType from A as a left outer join B as t on t.ID=ID where t.Type=TYPE
试一下吧,希望能够帮到你哦
追问
除了逐个打出列名改别名外有没其它快捷的方法把所有列名改了?
比如A的所有列名改为A_%列名变量%
比如B的所有列名改为B_%列名变量%
追答
据我所知,好像木有呢
展开全部
以下查询,只显示A表的字段:
1 | select A.* from A left outer join B as t on t.ID=ID where t.Type=TYPE |
以下查询,只显示B表的字段
1 | select t.* from A left outer join B as t on t.ID=ID where t.Type=TYPE |
以下查询,指定了A的字段和B的字段
1 | select A. Name As A_Name, t. Name As B_Name from A left outer join B as t on t.ID=ID where t.Type=TYPE |
追问
除了逐个打出列名改别名外有没其它快捷的方法把所有列名改了?
比如A的所有列名改为A_%列名变量%
比如B的所有列名改为B_%列名变量%
追答
只能逐个输入你要的字段名和别名了。
本回答被网友采纳
展开全部
SELECT
A.ID
A.NAME
A.PASSWORD
A.TYPE
B.ID
B.NAME
B.Type
A left outer join B on A.ID=B.ID where A.Type=B.TYPE
A.ID
A.NAME
A.PASSWORD
A.TYPE
B.ID
B.NAME
B.Type
A left outer join B on A.ID=B.ID where A.Type=B.TYPE
追问
除了逐个打出列名改别名外有没其它快捷的方法把所有列名改了?
比如A的所有列名改为A_%列名变量%
比如B的所有列名改为B_%列名变量%
追答
那就改表列名吧,省事快捷,直接可以用 select * 了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |