⊗ppPmDOGD 382 of 447 menu

Mendapatkan Data dari Jadual Berkaitan dalam PHP

Mari buat permintaan yang akan mengambil semua pengguna bersama dengan bandar mereka. Untuk ini kita memerlukan arahan LEFT JOIN:

Sintaksnya adalah seperti berikut:

SELECT medan FROM nama_jadual LEFT JOIN nama_jadual_berkaitan ON syarat_perkaitan WHERE syarat_pemilihan

Mari kita huraikan bahagian individu sintaks arahan ini.

Medan

Oleh kerana pemilihan dilakukan dari beberapa jadual, memilih semua medan melalui * tidak akan berfungsi. Permintaan berikut akan memilih medan hanya dari jadual utama, tetapi tidak dari jadual berkaitan:

SELECT *

Untuk data dipilih dari semua jadual, perlu untuk menentukan nama jadual untuk pemilihan sebelum *:

SELECT users.*, cities.*

Atau anda boleh menyenaraikan medan yang kita perlukan dengan menentukan nama jadual sebelum mereka:

SELECT users.name, cities.name

Kedua-dua cara ini mempunyai masalah. Masalahnya ialah, jika medan dalam jadual mempunyai nama yang sama, maka dalam tatasusunan PHP akan berlaku konflik nama dan hanya satu medan yang akan menang, dan yang kedua tidak akan wujud.

Untuk menyelesaikan masalah ini, nama yang berkonflik perlu dinamakan semula menggunakan arahan as:

SELECT users.name, cities.name as city_name

Perkaitan

Selepas arahan ON kita mesti menentukan medan dari dua jadual, yang mana perkaitan dilakukan. Dalam kes kami, ini akan menjadi medan id dari jadual bandar dan medan city_id dari jadual pengguna:

ON cities.id=users.city_id

Permintaan

Hasilnya, permintaan yang akan mengambil pengguna bersama dengan bandar mereka akan kelihatan seperti berikut:

SELECT users.name, cities.name as city_name FROM users LEFT JOIN cities ON cities.id=users.city_id

Tugas Praktikal

Katakan anda mempunyai jadual dengan produk dan jadual dengan kategori mereka. Tulis permintaan yang akan mengambil nama produk bersama dengan kategori mereka.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak