AW: MSSQL Rekursionslevel bestimmen
@omata
mein geht ab 2005 bezog sich auf Funtiontables, die Prozedur von mir geht freilich auch ab 2000, unter Deinem Verweis fand ich auch nur Prozeduren. |
AW: MSSQL Rekursionslevel bestimmen
@Bummi: was soll ich dazu sagen? Vielen, vielen Dank! Leider meldet er folgenden Fehler: 'Ungültiger Objektname 'new_tbl_categories'.', wenn ich es wie von dir beschrieben aufrufe. Hast du da eine Idee?
Mein Versuch bis jetzt ist eher mau:
Code:
es kompiliert nichtmal und Errorhandling wäre natürlich auch angebracht^^
create function genreDist(@UGenreId int,@OGenreId int)
RETURNS int as begin declare @dist int declare @curr int set @dist = 0 set @curr = @UGenreId while @curr != @UGenreId begin set @dist = @dist+1 select @curr = (select obergenre from genre where genreid = @curr) end return @dist end; |
AW: MSSQL Rekursionslevel bestimmen
wie gesagt ich hatte auf einer vorhanden Tabelle getestet
3 mal Suchen und Ersetzen: new_tbl_categories >> Genre internalid >> ID refparent >> GenreSubID BTW: der Algo funktioniert folgendermassen gegf. anpassen, er sucht den ersten gemeinsamen Vorfahr und summiert die Abstände der beiden Knoten zu zu diesem |
AW: MSSQL Rekursionslevel bestimmen
Oh Klasse vielen, vielen Dank! Nun läufts. :)
|
AW: MSSQL Rekursionslevel bestimmen
Noch ein Gedanke.
Ab MSSQL 2005 geht auch folgendes. Sichwort Common Table Expressions (CTE)
Code:
Siehe hierzu bei MS CTE
WITH cte_name ( column_name [,...n] )
AS ( CTE_query_definition –- Anchor member is defined. UNION ALL CTE_query_definition –- Recursive member is defined referencing cte_name. ) -- Statement using the CTE SELECT * FROM cte_name oder auch CTE Beispiele Hier ist auch ein Beispiel zur Ermittlung des Levels im SQL Vorteil keine Funktionen und auch noch schneller. SQL Syntax findet man auch bei Firebird Gruß BORWIN |
AW: MSSQL Rekursionslevel bestimmen
@borwin
vielen Dank .... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz