2010-12-07 12 views
0

J'ai un ct récursif en mssql qui trouve tous les enfants d'un certain nœud. en termes db:convertir cte en mysql

create table nodes (
    id   int primary key autoincrement, 
    parent  int 
) 

avec ce tableau j'ai eu un cte que je l'ai utilisé pour créer une vue:

create view (
    node_id int, 
    child_id int 
) 

comment puis-je faire cela dans une base MySQL? (Je ne peux pas changer le format de table pour accommoder d'autres méthodes telles que le modèle de jeu imbriqué)

pire cas, pourrais-je faire une fonction pour le faire?

merci!

+0

Pour convertir une cte' normale 'juste en faire une vue mais je suppose que votre' cte' était récursive? Dans ce cas, il n'y a pas de support dans mysql pour ceux-ci. Voir [cette réponse] (http://stackoverflow.com/questions/3276136/recursive-self-query/3276806#3276806) pour des liens utiles sur le sujet de la représentation de données hiérarchiques dans MySQL. –

+0

duplication possible de [Comment utilisez-vous la clause "WITH" dans MySQL?] (Http://stackoverflow.com/questions/1382573/how-do-you-use-the-with-clause-in-mysql) – Ben

Répondre