sql >> Databáze >  >> RDS >> Sqlserver

SQL – Jak ukládat a procházet hierarchie?

Líbí se mi Modified Preorder Tree Traversal Algorithm. Tato technika velmi usnadňuje dotazování stromu.

Zde je ale seznam odkazů na téma, které jsem zkopíroval z webové stránky přispěvatelů Zend Framework (PHP) (zde zveřejnil Autor Laurent Melmoux dne 5. června 2007 15:52).

Mnoho odkazů je jazykově agnostických:

Existují 2 hlavní reprezentace a algoritmy pro reprezentaci hierarchických struktur s databázemi:

  • vnořená sada známá také jako upravený algoritmus procházení stromem předobjednávky
  • model seznamu sousedství

Je to dobře vysvětleno zde:

  • http://www.sitepoint.com/article/hierarchical-data-database
  • Správa hierarchických dat v MySQL
  • http://www.evolt.org/article/Four_ways_to_work_with_hierarchical_data/17/4047/index.html

Zde je několik dalších odkazů, které jsem shromáždil:

  • http://cs.wikipedia.org/wiki/Tree_%28data_structure%29
  • http://cs.wikipedia.org/wiki/Category:Trees_%28structure%29

model seznamu sousedství

  • http://www.sqlteam.com/item.asp?ItemID=8866

vnořená množina

  • http://www.sqlsummit.com/AdjacencyList.htm
  • http://www.edutech.ch/contribution/nstrees/index.php
  • http://www.phpriot.com/d/articles/php/application-design/nested-trees-1/
  • http://www.dbmsmag.com/9604d06.html
  • http://en.wikipedia.org/wiki/Tree_traversal
  • http://www.cosc.canterbury.ac.nz/mukundan/dsal/BTree.html (aplet java montrant le fonctionnement)

Grafy

  • http://www.artfulsoftware.com/mysqlbook/sampler/mysqled1ch20.html

Třídy :

Vnořené sady DB Tree Adodb

  • http://www.phpclasses.org/browse/package/2547.html

Model návštěvnosti ADOdb

  • http://www.phpclasses.org/browse/package/2919.html

HRUŠKA::DB_NestedSet

  • http://pear.php.net/package/DB_NestedSet
  • Využití:https://www.entwickler.com/itr/kolumnen/psecom,id,26,nodeid,207.html

HRUŠKA::Strom

  • http://pear.php.net/package/Tree/download/0.3.0/
  • http://www.phpkitchen.com/index.php?/archives/337-PEARTree-Tutorial.html

nstrees

  • http://www.edutech.ch/contribution/nstrees/index.php


  1. Může spouštěč MySQL simulovat omezení CHECK?

  2. Vyhledejte v databázi Microsoft SQL Server uložená data

  3. PHP, ORM, MSSQL a Unicode, je možné, aby to fungovalo dohromady?

  4. HQL je null a !=null ve sloupci Oracle