2016-03-31 22 views
0

2つのテーブルに存在する行の数を取得しようとしています。関与する2つのテーブルは以下のとおりです。2つのテーブルからデータを取得しないクエリ

  • flagged_posts3行があります。
  • flagged_comments1の行があります。

    $all_flagged_posts = mysqli_query ($connect, "SELECT * FROM flagged_comments c LEFT JOIN flagged_posts p ON c.id AND p.id"); 
         $num_of_total_flagged_posts = mysqli_num_rows ($all_flagged_posts); 
         echo $num_of_total_flagged_posts; 
    

    しかし、それは4あるべきときエコーは、結果3を生成します。ここでは

は私が持っているものでしょうか?

答えて

0

あなたが任意のリレーショナルチェックせずに行のカウントをしたいので - あなたはunion

select sum(cnt) as total_count 
from 
(
    select count(*) as cnt from flagged_comments 
    union all 
    select count(*) from flagged_posts 
) tmp 
+0

は、[いいえ、最初のクエリだけが規定する第2のクエリ – RiggsFolly

+0

であり 'cnt'を逃すArn't使用することができます列名 –

+0

ああ、私は毎日何かを学びます。 – RiggsFolly

関連する問題