テーブルに参加する 、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の代わりに 。 - 行を表示することもできますが、
NULLの代わりに他の何か(空またはテキストまたは...)を表示しますCOALESCEを使用する 。 - 結果を1つの(大きな)新しいテーブルと見なすことができるため、通常どおりにWHERE句を追加できます。たとえば、親名をフィルタリングします。
WHERE c2.cat_name = 'test2'