从两个表中,把不同类型的字段查询连接在一起

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从两个表中,把不同类型的字段查询连接在一起相关的知识,希望对你有一定的参考价值。

select BedNom,PeopleNom from dbo.Room
select Type,Price from dbo.Roomtype
要查的字段的类型是不一样的,UNION 我已经试过了,行不通
我只是要把这两个查询的结果连接在一起

不要新建一个表,然后插入的方法
这两个表只有一个字段是相同,或者说Roomtype 的主键是Room 的外键

连接到一起的方法很多,有关键字当然按照关键字连接,这样一般是记录与字段的连接,就是关键字相同的两个表的记录显示在同一行(横向连接):
SELECT * FROM dbo.Room.DBO.ROOMTYPE WHERE ROOMTYPE.主键字段名=room.外键字段名
如果使用UNION连接两个表,这是记录间的连接(叫纵向连接吧),但这需要连接的两个表有完全相同的字段。如果能通过转换改为相同当然也就可以连接了。
如:
select BedNom,PeopleNom,type=0,price=0 from dbo.Room
union
select BedNom='',PeopleNom='',Type,Price from dbo.Roomtype
参考技术A <%
PicNuM=rs_Img("return_id")
if PicNuM="1" then%>
<img src="Img/nopic.gif"/>
<%else%>
<img src="showimg.asp?UserName='<%=Session("UserName")%>'">
<%End if%>
参考技术B select * from 表1,表2 where 表1id=表2id

我就以表1和表2代替你要查的表,表1id和表2id代替你要连接在一起,一般数据表而言都是id字段作为两个表连接的字段,这就要看你的那个字段相等,或则有一样的数字差。

selcet BedNom,PeopleNom,Type,Price from dbo.Room,dbo.Roomtype where Roomtype.id=Room.id本回答被提问者采纳
参考技术C 连接到一起的方法很多,有关键字当然按照关键字连接,这样一般是记录与字段的连接,就是关键字相同的两个表的记录显示在同一行(横向连接):
SELECT * FROM dbo.Room.DBO.ROOMTYPE WHERE ROOMTYPE.主键字段名=room.外键字段名
如果使用UNION连接两个表,这是记录间的连接(叫纵向连接吧),但这需要连接的两个表有完全相同的字段。如果能通过转换改为相同当然也就可以连接了。

应该先编辑关系吧 一对多 并实施完整性参照
创建关联关系 就可以选不同的表中的数据了

如:
select BedNom,PeopleNom,type=0,price=0 from dbo.Room
union
select BedNom='',PeopleNom='',Type,Price from dbo.Roomtype
参考技术D 这要看一看这两个表有没有相同的字段,

根据意思,应该有的,

select bednom,peoplenom,type,price
form dbo.room,dbo.roomtype
where dbo.room.相关字段=dbo.roomtype.相关字段

以上是关于从两个表中,把不同类型的字段查询连接在一起的主要内容,如果未能解决你的问题,请参考以下文章

MySQL8:连接查询

如何连接两个表mysql?

mysql 连接查询时如何从第二章表中根据不同条件获取不同字段

如何在sql中连接来自不同表的两个字段

我想从 2 个不同的表中进行连接查询,我想从两个表中输出

MySQL增删改查之多表联合查询