SQL 查询未检索到任何内容
SQL Query not retrieving anything
我有2个table:
装备:
codEquipa (这是 table 的主键)
nomeEquipa
logoEquipa
estadioEquipa
cidadeEquipa
乔戈:
codJogo (这是table的主键)
codEquipaCasa (这是 codEquipa 的外键)
codEquipaFora (这是 codEquipa 的外键)
dataJogo
并查询:*
SELECT Equipa.nomeEquipa AS "Casa",
Equipa.nomeEquipa AS "Visitante"
FROM Equipa
JOIN Jogo AS j1 ON j1.codEquipaCasa=Equipa.codEquipa
JOIN Jogo AS j2 ON j2.codEquipaFora=Equipa.codEquipa
问题是我在 Jogo 中有一个带有现有外键的注册表,但查询没有检索到任何东西。
在此先感谢您能给我的任何帮助。
如果您需要更多信息,请告诉我。
您尝试加入两次的 table 似乎是 Equipa,而不是 Jogo。
如果我正确理解你的问题,试试这个:
SELECT e1.nomeEquipa AS "Casa",
e2.nomeEquipa AS "Visitante"
FROM Jogo j
JOIN Equipa AS e1 ON j.codEquipaCasa=e1.codEquipa
JOIN Equipa AS e2 ON j.codEquipaFora=e2.codEquipa
您想 join
Equipa
两次到 Jogo
,而不是相反:
SELECT ec.nomeEquipa AS "Casa",
ef.nomeEquipa AS "Visitante"
FROM Jogo j JOIN
Equipa ec
ON j.codEquipaCasa = ec.codEquipa JOIN
Equipa ef
ON j.codEquipaFora = ef.codEquipa;
如果有缺失值,那么您可能需要 LEFT JOIN
。
我有2个table:
装备:
codEquipa (这是 table 的主键)
nomeEquipa
logoEquipa
estadioEquipa
cidadeEquipa
乔戈:
codJogo (这是table的主键)
codEquipaCasa (这是 codEquipa 的外键)
codEquipaFora (这是 codEquipa 的外键)
dataJogo
并查询:*
SELECT Equipa.nomeEquipa AS "Casa",
Equipa.nomeEquipa AS "Visitante"
FROM Equipa
JOIN Jogo AS j1 ON j1.codEquipaCasa=Equipa.codEquipa
JOIN Jogo AS j2 ON j2.codEquipaFora=Equipa.codEquipa
问题是我在 Jogo 中有一个带有现有外键的注册表,但查询没有检索到任何东西。
在此先感谢您能给我的任何帮助。 如果您需要更多信息,请告诉我。
您尝试加入两次的 table 似乎是 Equipa,而不是 Jogo。 如果我正确理解你的问题,试试这个:
SELECT e1.nomeEquipa AS "Casa",
e2.nomeEquipa AS "Visitante"
FROM Jogo j
JOIN Equipa AS e1 ON j.codEquipaCasa=e1.codEquipa
JOIN Equipa AS e2 ON j.codEquipaFora=e2.codEquipa
您想 join
Equipa
两次到 Jogo
,而不是相反:
SELECT ec.nomeEquipa AS "Casa",
ef.nomeEquipa AS "Visitante"
FROM Jogo j JOIN
Equipa ec
ON j.codEquipaCasa = ec.codEquipa JOIN
Equipa ef
ON j.codEquipaFora = ef.codEquipa;
如果有缺失值,那么您可能需要 LEFT JOIN
。