1
我有一个数据库表,其中有不同行之间的父子关系。
1家长可以有任意数量的孩子。
孩子没有孩子。
我想将'Message'从'Parent Category'复制到子类别。从同一个表中分配值
CategoryID Name Value Message ParentID DeptId
1 Books 9 Specials 1
2 Music 7 1
3 Paperback 25 1 1
4 PDFs 26 1 2
5 CDs 35 2 1
如果这是样本数据,平装在查询运行后应该有Specials,因为它是Message。
我已经得到子行(查询运行速度非常慢,不知道为什么),但我如何获取数据并将其分配给适当的子行?
[email protected] = 1
select * from Categories
where ParentID in(
select CategoryID from Categories
where DeptID = @DeptId
)
我希望看到一个不会使用游标的解决方案。
感谢
的方法是正确的,但是对于SQL Server,你应该改变你的第几行:更新c从C类INNER JOIN ..... – jlnorsworthy 2012-03-29 03:10:39
@jlnorsworthy从我的[语法阅读](HTTP ://msdn.microsoft.com/en-us/library/ms177523.aspx),这应该是有效的:'更新别名SET col = val从tbl,tbl,tbl ...' – 2012-03-29 03:12:33
是啊你是对的 - 修复一个语法错误只能引入另一个。我要指责无法格式化评论:) – jlnorsworthy 2012-03-29 03:14:35