Php 用mysql连接两个mysql查询

Php 用mysql连接两个mysql查询,php,mysql,database,Php,Mysql,Database,问题1 问题2 676 2013-05-19 Newcastle Utd 0 1 Arsenal -14 结果 $query = "SELECT match_id, match_date, home_team, home_score, away_score, away_team, rating FROM premier_league2 WHERE (home_team ='" .$home_team ."'

问题1

问题2

676 2013-05-19  Newcastle Utd   0   1   Arsenal -14
结果

$query = "SELECT  match_id, match_date, home_team, 
    home_score, away_score, away_team, rating

              FROM premier_league2 
              WHERE (home_team ='" .$home_team ."'
              OR    away_team ='" .$home_team ."')  
              AND   postponed !=1
              AND   league =1
              AND   match_date <'" . $current_date ."'
              AND   match_date >'" . $newseason ."'
              ORDER BY match_date DESC LIMIT 1";
SELECT home_per, draw_per, away_per FROM rating WHERE rating = -14;
现在我尝试加入这些查询,就像

28.30 26.50 45.10 

评分(-14)在两个表中都很常见,希望您能提供帮助。

您可以使用join

676 2013-05-19  Newcastle Utd   0   1   Arsenal -14  28.30 26.50 45.10 
选择
a、 比赛id,比赛日期,主队,主队,客场,客场,主队,主队,客场
从…起
总理联盟2 a
左连接
a.评级为b.评级=b.评级
哪里
(主队=%主队%
或客场球队=%HOME球队%)
推迟了=1.
联盟=1
和匹配日期<%SURRENT\U date%
和比赛日期>%新赛季%
按匹配项订购(日期描述限制1)

。它们不再得到维护。看到了吗?相反,学习,并使用,或-将帮助您决定哪一个。如果您选择PDO,.

您可以使用join来完成

676 2013-05-19  Newcastle Utd   0   1   Arsenal -14  28.30 26.50 45.10 
选择
a、 比赛id,比赛日期,主队,主队,客场,客场,主队,主队,客场
从…起
总理联盟2 a
左连接
a.评级为b.评级=b.评级
哪里
(主队=%主队%
或客场球队=%HOME球队%)
推迟了=1.
联盟=1
和匹配日期<%SURRENT\U date%
和比赛日期>%新赛季%
按匹配项订购(日期描述限制1)
。它们不再得到维护。看到了吗?相反,学习,并使用,或-将帮助您决定哪一个。如果选择PDO,.

选择
比赛id,比赛日期,主队,
主客场得分、客场得分、客场球队得分、评分、,
r、 主客场
从…起
总理联盟2
内部连接额定值为r ON pl.rating=r.rating
哪里
(pl.home_team=“$home_team.”
或pl.away_team='“$home_team.”)
和pl.推迟=1.
和pl.league=1
和pl.match_date“.$newseason.”
按pl.match_date DESC LIMIT 1”订购;
选择
比赛id,比赛日期,主队,
主客场得分、客场得分、客场球队得分、评分、,
r、 主客场
从…起
总理联盟2
内部连接额定值为r ON pl.rating=r.rating
哪里
(pl.home_team=“$home_team.”
或pl.away_team='“$home_team.”)
和pl.延迟!=1
和pl.league=1
和pl.match_date'”$新闻季“
按pl.match_date DESC LIMIT 1”订购;

请切换到以防止SQL注入。请切换到以防止SQL注入。将字符串插值切换到答案中的占位符将有助于推广良好做法。这完全没有当前形式的SQL转义。@Fracsi,@Aguardientico非常感谢您!将字符串插值转换为答案中的占位符将有助于推广良好做法。这完全没有当前形式的SQL转义。@Fracsi,@Aguardientico非常感谢您!如果您将其更改为使用准备好的语句,这将是一个更好的示例;-)如果您将其更改为使用准备好的语句,这将是一个更好的示例;-)
SELECT
   pl.match_id, pl.match_date, pl.home_team, 
    pl.home_score, pl.away_score, pl.away_team, pl.rating,
   r.home_per, r.draw_per, r.away_per
FROM
   premier_league2 pl
 INNER JOIN rating as r ON pl.rating = r.rating
WHERE
(pl.home_team ='" .$home_team ."'
              OR    pl.away_team ='" .$home_team ."')  
              AND   pl.postponed !=1
              AND   pl.league =1
              AND   pl.match_date <'" . $current_date ."'
              AND   pl.match_date >'" . $newseason ."'
              ORDER BY pl.match_date DESC LIMIT 1";