この質問は2つの部分があります。 DPHPのmysqlクエリのクエリ:D
1)私は別のテーブルの値の間のリンクを格納するために1つのテーブルを使用しています。私はそのテーブルを検索して継承リストを探しています。
while($cont) {
$rst = DB::query("SELECT parentID FROM code_inheritance WHERE childID=".$sid);
if($rst->num_rows != 0) {
$ob = $rst->fetch_object();
if($list != '') $list .= ',';
$list .= $ob->parentID;
$sid = $ob->parentID;
} else $cont = false;
}
DBは私のデータベースクラスです。 しかし、これはデータベースを効率的に検索する方法ではありません。誰も私が1つのデータベースクエリでこれを行うことができる方向に私を指すことができますか?
2)次にリストを使用してクラスの名前を検索し、継承リストを画面にエコーすることができますが、ID番号順に返されますパート1で私は現在、これをやっている:継承ツリーが正しい順序になるよう
if($list != '') {
$rst = DB::query("SELECT Name FROM code WHERE ID IN ($list)");
$list = '';
while($ob = $rst->fetch_object()) {
echo $ob->Name;
if($list != '') $list .= ' -> ';
$list .= '<a href="/code/'.$ob->Name.'/">'.$ob->Name.'</a>';
}
$list = "Inheritance -> ".$list;
}
は、どのように私は、リストを取得することができますために、私は、第一部でそれらを見つけましたか?
申し訳ありませんが、これは少し時間がかかりましたが、可能な限り多くの情報を追加したいと考えていました。
私はあなたの質問に関連するDBスキーマに関する情報を更新したいと思うでしょう - 上記を1つのクエリに組み合わせることができるはずです。 –
これは正しい方向にあなたを押し進めるかもしれません:http://www.sqlteam.com/article/more-trees-hierarchies-in-sql –