2010-07-13 8 views
0

J'ai une table nommée "catégories" comme ceci:meilleure façon pour les JOIN ID Parent

 
id    int(11)  NO PRI NULL auto_increment 
name   varchar(50) NO  NULL 
seo_name  varchar(50) NO MUL NULL 
parent_id  int(11)  NO  NULL 
total_projects int(11)  NO  NULL 
order   int(11)  NO MUL NULL 

id et parent_id sont des colonnes liées. parent_id fait référence aux relations de lignes. Par exemple, je suis Interrogation comme ce

SELECT * FROM categories WHERE id = 99 

Mais je veux obtenir l'identifiant de la catégorie des parents (il est stocké dans parent_id) dans la même requête. Comment puis-je faire ceci? Merci

Répondre

3

Essayez ceci.

SELECT t1.* , t2.name as parent_category 
    from categories t1 
    INNER JOIN categories t2 on t1.id = t2.parent_id 
1
SELECT * FROM Categories cat 
INNER JOIN Categories parent 
on cat.parent_id = parent.id 

Est-ce que vous voulez dire?

Questions connexes