Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 内部联接返回单行而不是多行_Javascript_Mysql_Join - Fatal编程技术网

Javascript 内部联接返回单行而不是多行

Javascript 内部联接返回单行而不是多行,javascript,mysql,join,Javascript,Mysql,Join,我的内部联接只返回第一行,但在我的表中有多行。我有三张桌子。我正在执行从主连接到次连接到第三个连接 Main(左连接)->secondary(内部连接)->third(返回一行而不是多行) 第一个表格 id name 1 john 2 abel 3 julia id first_table(FK) 1 1 2 2 id second_table(FK) name 1 1 hello 2 1 haha 3 2

我的内部联接只返回第一行,但在我的表中有多行。我有三张桌子。我正在执行从主连接到次连接到第三个连接

Main(左连接)->secondary(内部连接)->third(返回一行而不是多行)

第一个表格

id name
1  john
2  abel
3  julia
id first_table(FK)
1  1
2  2
id second_table(FK) name
1  1                hello 
2  1                haha 
3  2                thanks
第二张表

id name
1  john
2  abel
3  julia
id first_table(FK)
1  1
2  2
id second_table(FK) name
1  1                hello 
2  1                haha 
3  2                thanks
第三张表

id name
1  john
2  abel
3  julia
id first_table(FK)
1  1
2  2
id second_table(FK) name
1  1                hello 
2  1                haha 
3  2                thanks
查询

SELECT * FROM first_table 
LEFT JOIN second_table ON first_table.id = second_table.first_table
INNER JOIN third_table ON third_table.second_table = second_table.id
它返回第一个表和第二个表以及第三个表中的一行

我想要什么:

返回第一个表和第二个表,其中包含第三个表中的多行

SELECT * FROM first_table 
LEFT JOIN 
(second_table 
INNER JOIN third_table ON third_table.second_table = second_table.id) 
ON first_table.id = second_table.first_table;
或与原始查询类似的结果

SELECT * FROM first_table 
INNER JOIN 
(second_table 
INNER JOIN third_table ON third_table.second_table = second_table.id) 
ON first_table.id = second_table.first_table;
你能行

SELECT * FROM first_table 
LEFT JOIN 
(second_table 
INNER JOIN third_table ON third_table.second_table = second_table.id) 
ON first_table.id = second_table.first_table;
或与原始查询类似的结果

SELECT * FROM first_table 
INNER JOIN 
(second_table 
INNER JOIN third_table ON third_table.second_table = second_table.id) 
ON first_table.id = second_table.first_table;

你的问题可能是错的。当联接条件使用第二个\u表。第一个\u表列时,从第一个\u表提取并对第一个\u表应用左联接。这将在执行时引发异常。它应该是这样的,并将为您提供多个您想要的记录。我已经在我这边测试过了

SELECT * FROM first_table 
LEFT JOIN second_table ON first_table.id = second_table.first_table
INNER JOIN third_table ON third_table.second_table = second_table.id

你的问题可能是错的。当联接条件使用第二个\u表。第一个\u表列时,从第一个\u表提取并对第一个\u表应用左联接。这将在执行时引发异常。它应该是这样的,并将为您提供多个您想要的记录。我已经在我这边测试过了

SELECT * FROM first_table 
LEFT JOIN second_table ON first_table.id = second_table.first_table
INNER JOIN third_table ON third_table.second_table = second_table.id

右外连接
?是打字错误吗?左联接第一个表?它可能是第二个\u表吗?另外,您是否需要显示第一个\u表中的所有行,而不管该id是否存在于第二个\u表中?
右外部联接
?这是打字错误吗?左联接第一个表?它可能是第二个\u表吗?另外,您是否需要显示第一个\u表中的所有行,而不管该id是否存在于第二个\u表中?很抱歉,我在查询时出错了,应该将其保留为连接到第二个\u表而不是第一个\u表。感谢澄清。很抱歉我在查询中出错,应该将其保留为连接到第二个表而不是第一个表。谢谢你的澄清。