Mysql 从两个不同的表中选择数据

Mysql 从两个不同的表中选择数据,mysql,sql,sql-server,pdo,Mysql,Sql,Sql Server,Pdo,我不想写两个不同的查询,而是想写一个 $query = $pdo->prepare(" SELECT Car_Name FROM Car_data WHERE Car_Code = :carCode SELECT Fruit_Name FROM Fruit_Data WHERE Fruit_Code = :fruitCode; "); $query->bindPar

我不想写两个不同的查询,而是想写一个

$query = $pdo->prepare("
    SELECT      Car_Name
    FROM        Car_data
    WHERE       Car_Code = :carCode
    SELECT      Fruit_Name
    FROM        Fruit_Data
    WHERE       Fruit_Code = :fruitCode;
");
$query->bindParam(':carCode', $header['Car_Code']);
$query->bindParam(':fruitCode', $header['Fruit_Code']);
$query->execute();
$result = $query->fetchAll(PDO::FETCH_ASSOC);
if (!empty($result)) {
}
我希望收到以下格式的数据:

如果两个表都有数据:

Car_Name = 'Golf'
Fruit_Name = 'Banana'
Car_Name = 'Golf'
Fruit_Name = ''
如果只有一个表有数据:

Car_Name = 'Golf'
Fruit_Name = 'Banana'
Car_Name = 'Golf'
Fruit_Name = ''

我怎样才能做到

$query = $pdo->prepare("
  SELECT (SELECT      Car_Name
          FROM        Car_data
          WHERE       Car_Code = :carCode ) as Car_Name ,
         (SELECT  Fruit_Name
          FROM    Fruit_Data
          WHERE   Fruit_Code = :fruitCode) as Fruit_Name;
");

使用子查询,这应该有效

就性能而言,这比两个不同的查询更好吗?我认为这个答案会更快,因为只需要一个到db的连接,但您必须测试什么是最适合您的选项