sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan man bevarer orden på børn til at vise sig efter deres forældre

Du har virkelig to typer i én på din sidste forespørgsel. Forældrene kan sortere stigende eller faldende, men børnene kan kun sortere stigende.

Efter at have set på dette tror jeg, at du kan få en løsning med sådan noget.

   order by case 
        when depth = 0
            then path
    /*
      secret function that always returns the
      right numbers regardless of whether or not the sort is ascending.
    */
        else XXX_function('DESC', path)
    end desc;

Jeg tror, ​​at logikken er sund, men du er nødt til at finde ud af, hvordan du erstatter tallene på faldende sorter, da tingene vil være 'på hovedet'. (Måske vende array-positionerne om)



  1. Bestem rang baseret på flere kolonner i MySQL

  2. Syntaksfejl eller adgangsovertrædelse:1055 Udtryk #17 i gruppe efter

  3. Hvor meget RAM har din nye databaseserver brug for?

  4. MySQL konverterer datostreng til Unix tidsstempel