PHP/SQL:只使用一个查询,如果两个表中都有数据,则从两个表中选择行;如果没有数据,则从一个表中选择行

PHP/SQL:只使用一个查询,如果两个表中都有数据,则从两个表中选择行;如果没有数据,则从一个表中选择行,php,mysql,select,Php,Mysql,Select,我有两张评级/投票表。一个用于用户投票和统计,另一个用于外部投票。 外部投票表始终包含数据,因为它的DEAFULT=0,但只有在任何用户投票给特定ID时,用户投票才包含数据 所以我做了这样的事情: $sql = 'SELECT ratings_stats.votes, ratings_stats.total_value, ratings_stats.view, ratings_stats.fav, ratings_stats.wish,

我有两张评级/投票表。一个用于用户投票和统计,另一个用于外部投票。 外部投票表始终包含数据,因为它的DEAFULT=0,但只有在任何用户投票给特定ID时,用户投票才包含数据

所以我做了这样的事情:

    $sql = 'SELECT  ratings_stats.votes, ratings_stats.total_value,
                   ratings_stats.view, ratings_stats.fav, ratings_stats.wish,
                   ratings_external.votes, ratings_external.total_value
            FROM ratings_stats, ratings_external
            WHERE ratings_stats.imdbID = ?
            AND ratings_stats.imdbID = ratings_external.imdbID
            LIMIT 1';
如果可用,我想从两个表中选择数据,如果不可用,则只从第二个(外部投票)表中选择数据


如何在不进行新查询的情况下进行左连接?

@KennyTM:如何使用我提供的数据进行左连接?@KennyTM:如何使用我提供的数据进行左连接?+1用于发现正确的连接条件:-)我已删除我的答案。+1用于发现正确的连接条件:-)我已删除我的答案。
SELECT  ratings_stats.votes, 
        ratings_stats.total_value,
        ratings_stats.view, 
        ratings_stats.fav, 
        ratings_stats.wish,
        ratings_external.votes, 
        ratings_external.total_value
FROM  ratings_external
LEFT JOIN ratings_stats ON ratings_stats.imdbID = ratings_external.imdbID
WHERE ratings_external.imdbID = ?
LIMIT 1