Php 无法从2个表中检索数据,但没有结果

Php 无法从2个表中检索数据,但没有结果,php,mysql,opencart,Php,Mysql,Opencart,我有两张桌子: 竞赛\我在其中存储赢得竞赛的人员的优胜者,以及我在其中存储实际竞赛信息的桌面竞赛 因此,我正在检索获奖者和比赛的结束日期。但是负责date的查询没有返回任何内容。我使用Opencart在模型中执行查询。这是它的代码 public function getWinnersByDate($date) { $qr = "SELECT competition_id FROM " . DB_PREFIX . "competition_winners"; //

我有两张桌子: 竞赛\我在其中存储赢得竞赛的人员的优胜者,以及我在其中存储实际竞赛信息的桌面竞赛

因此,我正在检索获奖者和比赛的结束日期。但是负责date的查询没有返回任何内容。我使用Opencart在模型中执行查询。这是它的代码

public function getWinnersByDate($date) {
                $qr = "SELECT  competition_id FROM " . DB_PREFIX . "competition_winners";
//$fcid = $qr->row['competition_id'];
        $query = "SELECT cometition_id,end_date FROM " . DB_PREFIX . "competition WHERE competition_id = '" .$qr->row['competition_id'] . "'"; 


        return $query->row;

查询在PhpMyadmin中运行良好。我遗漏了什么或做错了什么?

您应该使用
JOIN
(在google上搜索SQL
JOIN
)而不是在两个查询中运行此功能

我不知道您的DB结构,但上面的查询在当前状态下没有意义-我相信您希望使用提供的
$date
参数添加一些
WHERE
子句,并且您希望从
竞赛获奖者
表中选择更多信息,因此,要么自己动手,要么就你的问题向我们提供更多细节

public function getWinnersByDate($date) {
    $qr = $this->db->query("
        SELECT cw.competition_id, c.end_date 
        FROM " . DB_PREFIX . "competition_winners cw
        LEFT JOIN " . DB_PREFIX . "competition c ON c.competition_id = cw.competition_id
    "); 

     return $query->rows;
}