SQL关联两张表查数据,结果只显示一条。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL关联两张表查数据,结果只显示一条。相关的知识,希望对你有一定的参考价值。

有两张表,一张user 有一callphone字段,另外一张user_pro 有两个字段:callphone和user_id字段。我要以user表中的callphone字段作为标准,去查user_pro字段中的user_id。但是我用left join或inner join 都只能查询出一条数据,实际上是多条数据的。这个是怎么回事?

我的主表是flowertype,子表是flower_info,我要根据主表的id同时修改两个表中鲜花类型相同的字段

如果你是双表关联更改数据,用Navicat for mysql设置一下子表的索引就可以了

参考技术A 你是把user表作为前面的表了吧,左链接是以左边的表为依据,即左边表有几条就有几条,inner join的话是两个表共有的数据
这么写就可以多条了

select user_pro.user_id
from user_pro
left outer join user on user.callphone=user_pro.callphone追问

不行,还是一样的。我的user 表是从一个外部表复制过来的。创建了主键也不行

本回答被提问者采纳
参考技术B select * from user a right join user_pro c on c.callphone = a.callphone
以user_pro 为基准表
参考技术C select up.user_id from user u
right join user_pro up on u.callphone=up.callphone

应该用右连接追问

左右链接都不行。

参考技术D select user_id from user_pro where callphone in(select callphone from user)
你试试,不知我有没理解错你的意思

sql如何将一个表与另外一张表相关联

参考技术A

1、首先在电脑中打开sql,在外层查询中写上S【elect * From S】查询出学生信息,如下图所示。

2、然后,再以同样的方法找出SC选修表,如下图所示。

3、此时,就可以在这里利用等值连接将S和SC表连接,如下图所示。

4、但是,因为这是不同层级的查询,因此需要Exists谓词将他们连接。

5、运行后,就可以看到这样的结果,如下图所示就完成了。

以上是关于SQL关联两张表查数据,结果只显示一条。的主要内容,如果未能解决你的问题,请参考以下文章

如何用SQL语句查询两张表中的相同字段数据

sql查询:使用内连接查询两张表的时候,如果左边表的一条记录对应了右边表的两条记录,结果显示排列问题

SQL JOIN 数据库表关联关系

sql两张表(主表和字典表)关联查询,字典项翻译问题

SQL怎么把两个表的数据合在一起查询!?

Oracle两张表关联中间表查询,那张关联到数据就显示,关联不到就负空值