我的MySQL查询一直没有结果返回,即使我认为它应该,我可能犯了一个愚蠢的错误。所以一个修复将是太棒了。感谢
SELECT SQL_CALC_FOUND_ROWS business_title, CONCAT(School_title, ', ', County, ', ', Town, ', ', Street_title, ', ', Postcode)
FROM `me-datab`.`business_main_location`
INNER JOIN `business_site`
ON `business_site`.Find_Me= `business_main_location`.Find_Me
INNER JOIN `Personal`
ON `Personal`.Personal_ID = `business_main_location`.Personal_ID
INNER JOIN `address`
ON `address`.Address_ID = `business_main_location`.Find_Me
答案 0 :(得分:2)
很有可能,您的某个联接没有匹配的值。您可以使用left join
代替inner join
来返回结果:
SELECT SQL_CALC_FOUND_ROWS business_title, CONCAT(School_title, ', ', County, ', ', Town, ', ', Street_title, ', ', Postcode)
FROM `me-datab`.`business_main_location`
LEFT JOIN `business_site`
ON `business_site`.Find_Me= `business_main_location`.Find_Me
LEFT JOIN `Personal`
ON `Personal`.Personal_ID = `business_main_location`.Personal_ID
LEFT JOIN `address`
ON `address`.Address_ID = `business_main_location`.Find_Me;
一种可能性是join
上的Address
;它看起来很可疑。
但是,如果您真的需要帮助,请尝试使用示例数据和您的查询设置SQL Fiddle(www.sqlfiddle.com)。