[英]Inner-Join query is returning no data
尝试运行一个查询,该查询将生成一个报告列表,所有报告都存储有关于它们的信息。 当我运行不带INNER JOIN部分的查询时,它工作正常,并且分别显示了报告列表和其信息。 当我尝试使用插入的INNER JOIN查询运行它时,它不返回任何数据。 两个表中肯定都有数据,不知道可能是什么问题。 谢谢。
这是在添加INNER JOIN方法之前可以工作并返回数据的查询:
SELECT reports_tbl.photoname
, reports_tbl.location
, reports_tbl.details
, reports_tbl.image
, reports_tbl.spotteddate
, reports_tbl.uploaddate
, typesofphoto_tbl.typename
FROM reports_tbl
这是不返回包含INNER JOIN的数据的查询:
SELECT reports_tbl.photoname
, reports_tbl.location
, reports_tbl.details
, reports_tbl.image
, reports_tbl.spotteddate
, reports_tbl.uploaddate
, typesofphoto_tbl.typename
FROM reports_tbl
INNER JOIN typesofphoto_tbl
ON reports_tbl.typeofphotoID = typesofphoto_tbl.ID
INNER JOIN:当两个表中至少有一个匹配项时,返回所有行。
左联接:从左表返回所有行,右表返回匹配的行右联接:从右表返回所有行,而左表匹配的行FULL JOIN:当存在匹配项时返回所有行一张桌子
因此,当您使用Inner Join
,表reports_tbl
和typesofphoto_tbl
都没有匹配,这就是为什么不获取数据的原因。
尝试LEFT-JOIN
SELECT reports_tbl.photoname
, reports_tbl.location
, reports_tbl.details
, reports_tbl.image
, reports_tbl.spotteddate
, reports_tbl.uploaddate
, typesofphoto_tbl.typename
FROM reports_tbl
LEFT JOIN typesofphoto_tbl
ON reports_tbl.typeofphotoID = typesofphoto_tbl.ID
如果右侧表typesofphoto_tbl
中没有匹配的行,则将从左侧表reports_tbl
获取记录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.