Sql 将一个表中的多个值连接到另一个表上的共享值
如果这个问题已经发布,我很抱歉,但我真的不知道如何正确地描述它,除了使用一个例子 为了简化我的问题,我创建了以下表格 基本上,我想链接 水果.颜色\u ID至颜色形状.值 果形与果形的比值 但是,我要显示的是colorShapes.VALUE,它是两个独立的列。 此外,我想让每一种水果展示尽可能多的次数,因为他们的可用性存在Sql 将一个表中的多个值连接到另一个表上的共享值,sql,join,toad,Sql,Join,Toad,如果这个问题已经发布,我很抱歉,但我真的不知道如何正确地描述它,除了使用一个例子 为了简化我的问题,我创建了以下表格 基本上,我想链接 水果.颜色\u ID至颜色形状.值 果形与果形的比值 但是,我要显示的是colorShapes.VALUE,它是两个独立的列。 此外,我想让每一种水果展示尽可能多的次数,因为他们的可用性存在 FRUITNAME COLOUR SHAPE AVAILABILITY ORANGE ORANGE ROUND METRO ORANGE ORANGE
FRUITNAME COLOUR SHAPE AVAILABILITY
ORANGE ORANGE ROUND METRO
ORANGE ORANGE ROUND LOBLAWS
TABLE #1: FRUIT
FRUIT_ID FRUITNAME COLOUR_ID SHAPE_ID
1 ORANGE 10 20
2 BANANA 11 21
3 APPLE 12 20
4 PEAR 13 20
TABLE #2: COLOURSHAPES
VALUE DESCRIPTION
10 ORANGE
11 YELLOW
12 RED
13 BROWN
20 ROUND
21 LONG
TABLE #3: AVAILABILITY
FRUIT_ID STORE
1 METRO
1 LOBLAWS
2 FRESHCO
3 METRO
4 FRESHCO
你可以加入表2两次,一次是为了得到颜色,另一次是为了得到形状
select T3.FRUIT_ID, T1.FRUIT_NAME, T3.STORE, T2A.DESCRIPTION, T2B.DESCRIPTION
from TABLE3 T3
join TABLE1 T1
left join TABLE2 T2A on T1.COLOUR_ID=T2A.VALUE
left join TABLE2 T2B on T1.SHAPE_ID=T2B.VALUE
在表3和表1之间缺少一个连接,您还需要在t2a和t2b之间加入一个连接来消除重复谢谢!我不知道你可以通过称它为不同的东西来加入同一个表两次。