在 PHP 中将两个查询合并为一个


Merge two queries into one in PHP

我需要将以下两个查询合二为一,但不能,当我尝试测试它时,它根本没有运行,我不确定为什么。如果有人能帮忙,我将不胜感激。这是我的第一个查询——

$exportArray[] = $row['reviewId'];
$row_num++;
$sql = <<<SQL
SELECT * FROM review WHERE (reviewForum = "$reviewForum") 

这是我的第二个——

$sql = "SELECT * FROM mom WHERE ( reviewId = " . $row['reviewId'] . " )";

我尝试了 UNION,但也没有工作。两个表之间的公共字段是 reviewId。我正在查询两个表,上面的第一个查询有效,但是当我尝试包含第二个表时,我无法让它工作。谢谢,如果有人可以帮助我,这可能是一些小东西,但我已经看了一段时间了,现阶段很烦人。

你可以试试这个:

SELECT a.*, b.*
FROM review a
JOIN mom b 
ON a.reviewId=b.reviewId
WHERE a.reviewForum ='$reviewForum'

我假设,reviewId 在两个表中

SELECT m.*,r.* 
FROM review r
  LEFT JOIN mom m 
    ON r.reviewId = m.reviewId
WHERE r.reviewForum = "$reviewForum"