加入两个表但没有结果

Joining two tables but getting no result

表 1

Move1 Move2
Fire Ice
Grass Fire
Ice Grass

表 2

Move Power
Fire 40
Grass 30
Ice 20

我有这两个表,但是当我在 WAMPServer 中 运行 这个 SQL 语句时,我没有得到任何行 returned:

SELECT *
FROM Table1, Table2
    INNER JOIN Table1 as Hello ON Hello.move1 = Table2.move
    INNER JOIN Table1 as Meow ON Meow.move2 = Table2.move

两个表都在同一个数据库下,所以我看不到我的错误。我想要它 return 类似...

表 1

Move1 Move2 Move Power Move Power
Fire Ice Fire 40 Ice 20
Grass Fire Grass 30 Fire 40
Ice Grass Ice 20 Grass 30

我哪里错了?

这应该有效:

select
  m.move1,
  m.move2,
  m1.move,
  m1.power,
  m2.move,
  m2.power
from
  table1 m
  join table2 m1 on m1.move = m.move1
  join table2 m2 on m2.move = m.move2

您可以在 SQL Fiddle

中进行测试

你的代码在几个方面是错误的,你应该学习如何使用 SQL 连接(This 是一个很好的基本解释)

就解决您的问题而言,试试这个:

SELECT *
FROM table1 INNER JOIN table2 t2_m1
  ON table1.move1 = t2_m1.move INNER JOIN t2_m2
  ON table1.move2 = t2_m2.move