在这种情况下,我希望前两种情况的最终结果是:
product_cat_name
A_SEE
A_BEE
业务规则是一个product_cat_name
只能属于一个group
,但是由于数据质量问题,有时我们有一个product_cat_name
属于两个不同的group
。在这种情况下,作为特殊情况,我们希望将group
附加到product_cat_name
上,以使product_cat_name
变得唯一。
听起来很简单,但我对此深感不安。 任何帮助表示赞赏。
答案 0 :(得分:0)
类似这样的东西:
sorters="
function(attr) {
var sortAs = $.pivotUtilities.sortAs;
if (attr == \"ContractCalendarMonth\")
{
return sortAs([\"7\", \"8\", \"9\", \"10\", \"11\", \"12\", \"1\", \"2\", \"3\",\"4\", \"5\", \"6\"]);
}
}"
我使用2017 STRING_AGG()作为编写它的最短时间-但是您可以轻松地将其更改为使用递归或XML路径
答案 1 :(得分:0)
将其分解成小块很简单。
您需要明显地更新表,并更改product_cat_name
的值。这很容易。
新值应为group + product_cat_name
。很简单。
您只想在product_cat_name
与多个组相关联时执行此操作。这可能是棘手的部分,但是也可以将其分解为容易的小片段。
您需要确定哪些product_cat_name
具有多个组。这很容易。 GROUP BY product_cat_name HAVING COUNT(DISTINCT Group) > 1
。
现在,您需要使用它来将UPDATE限制为仅那些product_cat_name
。这很容易。 WHERE product_cat_name IN (Subquery using above logic to get PCNs that have more than one Group)
。
所有简单步骤。将它们放在一起,您便有了解决方案。