我的表包含CATEGORY_NAME和parent_category_Id列如何從表中選擇行
我parent_category數據包含,同一表的主鍵ID。
我需要選擇所有行和insted的我parent_category_Id我需要選擇catogry_name
我的表包含CATEGORY_NAME和parent_category_Id列如何從表中選擇行
我parent_category數據包含,同一表的主鍵ID。
我需要選擇所有行和insted的我parent_category_Id我需要選擇catogry_name
我覺得這是你以後,雖然很難從這個問題來辨別:
Select c.*
From category c
Join parent_category pc ON c.parent_category_id = pc.id
Where pc.category_name = 'Some Name'
試着這麼做:
SELECT c.category_name, p.category_name
FROM categories c LEFT JOIN parent_categories p
ON c.parent_id = p.id
PS:你可能想重組你的數據庫,它將使更多感覺將所有類別存儲在同一個表中。例如見:http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/
你應該調整你的數據庫有一個表:
ID,名稱和父列,其中父列引用同一個表的ID列。您當前的數據庫未規範化,將來可能會導致問題。
至少你應該在categories表中有一個auto_increment id列。
這裏的其他答案是正確的(取決於你使用的SQL服務器)。
其工作,但我無法獲得父行...父行包含行值爲0. – TinTin 2010-06-12 13:45:10
@ Ayyappan.Anbalagan - 你能澄清一點嗎?如果你想要父表中的數據,你可以選擇pc,*,c。*或更好的,選擇你真正想要的列......但我不確定問題*你在追求什麼。 – 2010-06-12 13:55:02