Mysql
 sql >> база данни >  >> RDS >> Mysql

получаване на името на родител на дъщерната категория с една заявка в mysql

Съединете масата със себе си , като използвате parent колона за връзка към cat_id на родителя.

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
  • Внимавайте:тъй като някои елементи нямат родители (NULL ), поставих LEFT OUTER JOIN така че тези редове също се показват. Ако не искате това, използвайте JOIN вместо LEFT OUTER JOIN .
  • Можете също да покажете редовете, но да покажете нещо друго (празен или atext или ...) вместо NULL като използвате COALESCE .
  • Можете да разглеждате резултата като една (голяма) нова таблица, така че можете да добавяте клаузи WHERE, както обикновено правите, например филтриране по името на родител: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. Изберете ограничение за уникални записи с N реда

  2. Как да използвам хеширане на пароли с PDO, за да направя кода си по-сигурен?

  3. SQL Изберете само редове с минимална стойност в колона с условие Where

  4. Как да свържете PHP към MySQL

  5. Мигриране на база данни на Oracle към MySQL на AWS, част 2