鱼儿游游 发表于:2009-09-17 22:46:29
一个表有2个字段: CategoryID 和 ParentID
CategoryID:记录节点的ID
ParentID: 记录节点的ID对应的父节点ID
要求:用一句SQL语句,列出字段 CategoryID 值为 003 的下属所有节点。
目的:用于指定子窗体A的数据源
哪位朋友帮帮忙,多谢了。
用下面的函数能实现以上的功能,但我想用一句SQL语句,不用中间表,实现以下函数的功能。
Public Sub All_SubID(P_ID As Integer)
Dim Str1 As String
Str1 = "SELECT CategoryID INTO LSB FROM GoodsCategory WHERE ParentID=" + CStr(PID)
DoCmd.SetWarnings False
DoCmd.RunSQL Str1
Dim W1 As Boolean
W1 = True
While W1
Str1 = "SELECT CategoryID INTO LSB1 FROM GoodsCategory WHERE ParentID IN (SELECT CategoryID FROM LSB) AND CategoryID NOT IN (SELECT CategoryID FROM LSB)"
DoCmd.RunSQL Str1
If DCount("CategoryID", "LSB1") > 0 Then
Str1 = "INSERT INTO LSB (CategoryID) SELECT CategoryID FROM LSB1"
DoCmd.RunSQL Str1
Else
W1 = False
End If
Wend
End Sub
总记录:1篇 页次:1/1 9 1 :