Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

mendapatkan nama induk kategori anak dengan satu kueri di mysql

Bergabung dengan tabel itu sendiri , menggunakan parent kolom untuk ditautkan ke cat_id induknya.

SELECT c1.cat_id as childID, c1.cat_name ChildName, c2.cat_name as ParentName
from category c1
LEFT OUTER JOIN category c2
ON c1.parent = c2.cat_id
  • Hati-hati:karena beberapa elemen tidak memiliki induk (NULL ), saya beri tanda LEFT OUTER JOIN jadi baris-baris itu juga ditampilkan. Jika Anda tidak menginginkannya, gunakan JOIN bukannya LEFT OUTER JOIN .
  • Anda juga dapat menampilkan garis, tetapi menampilkan sesuatu yang lain (kosong atau teks atau ...) sebagai ganti NULL dengan menggunakan COALESCE .
  • Anda dapat menganggap hasilnya sebagai satu tabel baru (besar), sehingga Anda dapat menambahkan klausa WHERE seperti biasanya, misalnya memfilter nama induk:WHERE c2.cat_name = 'test2'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana memberikan semua hak istimewa untuk me-root pengguna di MySQL 8.0

  2. Bagaimana cara menghubungkan mysql dengan swift?

  3. Apa perbedaan kinerja antara insert abaikan dan ganti di MySQL?

  4. GALAT:Galat 1005:Tidak dapat membuat tabel (errno:121)

  5. Menyimpan data JSON bersarang ke dalam database MySQL menggunakan Hibernate