Select*fromStudent_info;+------+---------+----- -------+------------+|id |Nama |Alamat &n"/> Select*fromStudent_info;+------+---------+----- -------+------------+|id |Nama |Alamat &n">

Rumah >pangkalan data >tutorial mysql >Bagaimana untuk membuat paparan MySQL menggunakan data daripada berbilang jadual?

Bagaimana untuk membuat paparan MySQL menggunakan data daripada berbilang jadual?

王林
王林ke hadapan
2023-08-29 16:25:021325semak imbas

如何使用多个表中的数据创建 MySQL 视图?

Pengendali MySQL UNION boleh menggabungkan dua atau lebih set hasil, jadi kami boleh menggunakan operator UNION untuk mencipta paparan yang mengandungi data daripada berbilang jadual. Untuk memahami konsep ini, kami menggunakan jadual asas "Maklumat_Pelajar" dan "perincian_Pelajar" dengan data berikut -

mysql> Select * from Student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Chandigarh | Literature |
| 125  | Raman   | Shimla     | Computers  |
| 130  | Ram     | Jhansi     | Computers  |
| 132  | Shyam   | Chandigarh | Economics  |
| 133  | Mohan   | Delhi      | Computers  |
+------+---------+------------+------------+
6 rows in set (0.00 sec)

mysql> Select * from Student_detail;
+-----------+-------------+------------+
| Studentid | StudentName | address    |
+-----------+-------------+------------+
|       100 | Gaurav      | Delhi      |
|       101 | Raman       | Shimla     |
|       103 | Rahul       | Jaipur     |
|       104 | Ram         | Chandigarh |
|       105 | Mohan       | Chandigarh |
+-----------+-------------+------------+
5 rows in set (0.00 sec)

Contoh

Pertanyaan di bawah akan membuat paparan menggunakan data daripada dua jadual di atas -

mysql> Create or Replace View Info AS Select StudentName from Student_detail UNION Select Name From Student_info;
Query OK, 0 rows affected (0.10 sec)

mysql> select * from info;
+-------------+
| StudentName |
+-------------+
| Gaurav      |
| Raman       |
| Rahul       |
| Ram         |  
| Mohan       |
| YashPal     |
| Shyam       |
+-------------+
7 rows in set (0.00 sec)

Hasil di atas set Mengandungi gabungan nilai daripada dua lajur. Jika nilai diduakan maka ia menghapuskan nilai pendua.

Kami juga boleh menyimpan semua nilai atau mengulang nilai dengan menggunakan UNION ALL seperti yang ditunjukkan dalam pertanyaan berikut -

mysql> Create or Replace View Info AS Select student name from Student_detail UNION ALL Select Name From Student_info;
Query OK, 0 rows affected (0.16 sec)

mysql> select * from info;
+-------------+
| StudentName |
+-------------+
| Gaurav      |
| Raman       |
| Rahul       |
| Ram         |
| Mohan       |
| YashPal     |
| Gaurav      |
| Raman       |
| Ram         |
| Shyam       |
| Mohan       |
+-------------+
11 rows in set (0.00 sec)

Atas ialah kandungan terperinci Bagaimana untuk membuat paparan MySQL menggunakan data daripada berbilang jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam