MYSQL查询左联接从一个表显示所有数据

MYSQL查询左联接从一个表显示所有数据

本文介绍了MYSQL查询左联接从一个表显示所有数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

SELECT
A.CODE,
B.NOTE,
C.NUMBER

FROM (A
LEFT JOIN B
ON A.CODE = B.CODE
LEFT JOIN C
ON A.CODE = C.NUMBER
)

WHERE C.ID = B.ID

需要显示来自3个表的一些结果,但是我的结果显示,如果表C中的数据不是真实数据,则还报告了表B中的所有数据.

Need to show some results combined from 3 tables, but my results show all data from table B reported also if the data isn't real from table C.

Table A.code
1
2
3

Table B.code
1
2
3

Table B.note
pippo
paperino
pluto

Table C.number
1

理想情况下,应该显示一个结果

Ideally there should be one result showing

1  1    pippo

但结果显示为:

1  1    pippo
1  1    paperino
1  1    pluto

如何获取真实数据?

推荐答案

SELECT
A.CODE,
B.NOTE,
C.NUMBER

FROM A
INNER JOIN B ON A.CODE = B.CODE
INNER JOIN C ON A.CODE = C.NUMBER

不需要WHERE子句

这篇关于MYSQL查询左联接从一个表显示所有数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 04:17