从mysql中的不同表中提取两列

时间:2018-06-07 10:09:10

标签: php mysql

如何加入两个SQL查询

 $sql = "SELECT Wpm FROM tableA limit 26"; and 
 "SELECT Rpm FROM tableB";

成一个,并在下面的代码中回显结果?我只是想在表格中并排显示两列。我不确定"加入"这是正确的。谢谢!

  <table class="tbresult">
        <tr>
            <th>Wpm</th>
            <th>Rpm</th>
        </tr>

        <?php

      include ("config.php");

****   $sql = "SELECT Wpm FROM tableA limit 26"; 
AND 
"SELECT Rpm FROM tableB";******


      $result = $conn->query($sql);
      if ($result->num_rows > 0) {

      $counter = 3;

       while($Row = $result->fetch_assoc()) 
       {
            echo "<tr><td>" . $Row["Wpm"] . "</td><td>" . $Row["Rpm"] . "</td></tr>";

                $counter++;
                if($counter % 33 == 0) { ?>
    </table>

    <table class="tbresult">
        <tr>
            <th>Wpm</th>
            <th>Rpm</th>
        </tr>

        <?php }
        }
    echo "</table>";

    } else { echo "0 results"; }
    $conn->close();
    ?>

3 个答案:

答案 0 :(得分:0)

我认为你正在寻找一个&#34; Cross Join&#34; - 交叉连接产生&#34; carthesian产品&#34;。这意味着它将&#34;表A和#34;的行数相乘。和&#34;表B&#34;:

SELECT Wpm, Rpm FROM tableA cross join tableB 

(详情请见https://www.w3resource.com/sql/joins/cross-join.php

答案 1 :(得分:-1)

Connection refused

这意味着第二个查询每次都会运行,因为第一个变量被第二个变量替换。

为此,您需要为第一次和第二次查询单独运行。

答案 2 :(得分:-1)

如果列相同且相等,则使用UNION here 。否则最好使用JOIN而不是2选择并获取它们。 无论如何你的第一个$ sql被第二个......替换了。