我们,
我有一个Category表,其中包含CategoryID(主键),ParentID(int not null)和Category(nvarchar not null) .
我试图在此表中插入和检索ID为CategoryID的类别和具有ID ParentID的SubCategories .
我一直在尝试整个周末没有运气,希望你能帮助我 . 我正在使用MSSQL 2008 .
表结构应如下所示:
-Category1
SubCategory1
SubCategory2
...
-Category2
SubCategory2
SubCategory2
...
任何帮助将非常感激
3 回答
检查公用表表达式,允许您创建"recursive-selects" . http://www.mssqltips.com/sqlservertip/1520/recursive-queries-using-common-table-expressions-cte-in-sql-server/
您可以使用递归公用表表达式:
您可以使用MSDN documentation作为
WITH
语句来专门化您的查询你只是在寻找一个简单的自我加入吗?如果是这样,这应该工作:
或者你需要遍历整个父母链?如果是这样,那么递归CTE是更好的方法 .