gpt4 book ai didi

mysql - SQL - 在第三个表中使用公共(public)链接连接三个表

转载 作者:行者123 更新时间:2023-11-29 01:50:13 25 4
gpt4 key购买 nike

在我开始之前,是的,我彻底尝试搜索了许多关于 JOINS/INNER JOINS/OUTER JOINS/FULL JOINS 的教程,但我不太确定什么我在找什么指导或只是指点我正确的方向会非常有帮助。我会尽量说清楚。

所以基本上,我有三个表

| FooID | name | data  |
1 Name1 Data1
2 Name2 Data2
3 Name3 Data3
4 Name4 Data4

酒吧

| BarID |
1
2

矩阵

| BarID | FooID|
1 2
1 3
1 4
2 1
2 3

所以我正在寻找的是,我基本上有 BarID(为了清楚起见,我们假设它是 1)。我想从表 Matrix 中获取与 BarID 相关的所有行,这样我就可以检索与 Foo 相关的行(例如, BarID = 1,所以我应该得到 Foo 中的第 2、3 和 4 行,如果 BarID 是 2,我将得到 1 和 3,依此类推。

我正在尝试类似的东西:

SELECT Foo.FooID, Foo.name, Foo.data
FROM Bar
JOIN Matrix ON Matrix.BarID = 1 // The 1 is passed in, in this example
JOIN Foo ... // And this is where I'm stuck

我想要完成的事情是否有意义?我知道这很奇怪。将不胜感激任何帮助指点。提前致谢!

最佳答案

您似乎想要一个简单的JOINWHERE

select f.*
from foo f join
matrix m
on f.fooid = m.fooid
where m.barid = 1;

您不需要 bar 表,因为您传递的是 id。我认为您可能对这个问题想得太多了。

关于mysql - SQL - 在第三个表中使用公共(public)链接连接三个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47185907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com