如何编写使用MySQL JOIN的PHP脚本来连接两个MySQL表?

如何编写使用MySQL JOIN的PHP脚本来连接两个MySQL表?

我们可以使用MySQL JOIN的语法将两个表连接到PHP函数– mysql_query() 中。此函数用于执行SQL命令,稍后使用另一个PHP函数– mysql_fetch_array() 可以用于获取所有选择的数据。

为了说明这一点,我们有以下示例−

阅读更多:MySQL 教程

例子

在本示例中,我们使用两个MySQL表,它们具有以下数据−

mysql> SELECT * FROM tcount_tbl;
+-----------------+----------------+
| tutorial_author | tutorial_count |
+-----------------+----------------+
| mahran          |      20        |
| mahnaz          |      NULL      |
| Jen             |      NULL      |
| Gill            |      20        |
| John Poul       |       1        |
| Sanjay          |       1        |
+-----------------+----------------+
6 rows in set (0.01 sec)

mysql> SELECT * from tutorials_tbl;
+-------------+----------------+-----------------+-----------------+
| tutorial_id | tutorial_title | tutorial_author | submission_date |
+-------------+----------------+-----------------+-----------------+
|      1      |   Learn PHP    |   John Poul     |   2007-05-24    |
|      2      | Learn MySQL    |   Abdul S       |   2007-05-24    |
|      3      | JAVA Tutorial  |   Sanjay        |   2007-05-06    |
+-------------+----------------+-----------------+-----------------+
3 rows in set (0.00 sec)

现在,以下是将表连接起来以从表中选择所有作者的PHP脚本 tutorials_tbl 并选取相应数量的教程在 tcount_tbl 中。

<?php
   dbhost = 'localhost:3036';
   dbuser = 'root';
   dbpass = 'rootpassword';
   conn = mysql_connect(dbhost,dbuser, dbpass);

   if(!conn ) {
      die('Could not connect: ' . mysql_error());
   }

   sql = 'SELECT a.tutorial_id, a.tutorial_author, b.tutorial_count
   FROM tutorials_tbl a, tcount_tbl b
   WHERE a.tutorial_author = b.tutorial_author';

   mysql_select_db('TUTORIALS');
   retval = mysql_query( sql,conn );

   if(! retval ) {
      die('Could not get data: ' . mysql_error());
   }

   while(row = mysql_fetch_array(retval, MYSQL_ASSOC)) {
      echo "Author:{row['tutorial_author']} <br> ".
         "Count: {row['tutorial_count']} <br> ".
         "Tutorial ID: {row['tutorial_id']} <br> ".
         "--------------------------------<br>";
   }
   echo "Fetched data successfully  
";
   mysql_close($conn);
?>

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程