更新一行和所有“父母”(如果存在)

时间:2016-02-24 22:00:06

标签: sql sql-server parent cascade

我需要一个帮助来进行查询,其中我最初根据描述和所有父母更新行(如果存在)。

我的表格 ItemMenu:

编号

DescName

IdParent

BolActive

所以,我需要激活(设置BolActive = 1)一行,其中 description 我将在查询中通知,然后如果IdParent不为空/空并且如果它存在,则更新所有行同一张表(IdParent = Id)。

类似的东西:

更新ItemMenu设置BolActive = 1其中DescName ='MyMenu'

然后我需要检查来自选择*来自ItemMenu的IdParent,其中DescName ='MyMenu'存在

如果是,我将更新ItemMenu设置BolActive = 1其中IdParent(来自前一个选择)= Id 并再次检查IdParent是否存在此处...直到IdParent为空/空白并且它停止

有可能吗?

P.S。我不能改变表结构。

1 个答案:

答案 0 :(得分:2)

假设我理解了所需的代码结果,请尝试使用递归公用表表达式进行更新。提供了截图。为我的noob文本格式道歉。

http://s12.postimg.org/cw8yz0isd/Capture.jpg

var OldUrl = location.href
var NewUrl = "www.google.com.au";

var arr = ["foobar"];
for (var i = 0, len = arr.length; i < len; ++i) {
    if (OldUrl.indexOf(arr[i]) != -1) {
        // str contains arr[i]
        location.href = NewUrl; 
        //location.replace(NewUrl);
        found = true;
        break;
    }
}