T-SQLツリー検索
親の下にある場合は、ノードのセットから選択します
MSSQL Db(80000+)レコードに非常に大きなツリーがあります。LIKE
私のクライアントは、テキストコマンドを介してツリーのクイック検索を要求しました。このLIKE
コマンドは500レコード未満を返します。
それぞれのツリーをすばやくチェックして、特定のノードの下にあるかどうかを確認する再帰コマンドはありますか?
編集:しかし、それはかなり明確だと思いました...。
私はSQLServer2005を使用しています。
Table Schema
- (pK) Id
- (fK) ParentId
- FirstName
- LastName
いくつかのレベルをすばやく下げることができる再帰呼び出しがあります。ただし、名前検索を実行するには、ツリー全体をポーリングする必要があります。これは、数百レベルの深さになる可能性があり、オプションではありません。最初にテーブル全体で名前の一致を検索し、問題のツリーの一部ではないレコードをフィルタリングできるように、クエリの設計に役立つことを期待していました。