【发布时间】:2018-11-06 15:22:25
【问题描述】:
您好,根据所附图片,我们正在尝试更新包含保险风险组的 170 万行英国邮政编码表。有数千个没有 groupNumber 的新邮政编码,这些显示为 NULL。想要用上面行中邮政编码的值替换 NULL。 相信我们应该使用某种模糊逻辑,但需要一些帮助。 谢谢
【问题讨论】:
标签: sql fuzzy-logic
您好,根据所附图片,我们正在尝试更新包含保险风险组的 170 万行英国邮政编码表。有数千个没有 groupNumber 的新邮政编码,这些显示为 NULL。想要用上面行中邮政编码的值替换 NULL。 相信我们应该使用某种模糊逻辑,但需要一些帮助。 谢谢
【问题讨论】:
标签: sql fuzzy-logic
在查询中,您可以:
select t.*,
coalesce(groupnumber, lag(groupnumber) over (order by new_postcode)) as new_groupnumber
from t;
不清楚您是要实际更改数据还是仅在查询中返回值。
【讨论】:
update。另外,您应该按看起来像某种identifier 的第一列排序
模糊逻辑是关于用结构化的英语编写规则。这些规则可以同时被人和机器理解,并且可以很容易地根据进一步的要求进行调整。 Forth 可以写一个替换 NULL 邮编的规则:
OrigPostcode NULL = IF
row_above OrigPostcode
row_above groupnumber
THEN
术语“row_above”是一个语言变量。以上表示索引为i-1,隶属度为0.9。
除了手动制定规则之外,还可以使用一种称为“从演示中学习”的技术。这意味着人工操作员首先执行复制和粘贴任务,系统将自动识别规则。这通常使用神经网络完成,并在掠夺性出版团体提供的互联网上免费提供的开放获取期刊中进行了描述。
【讨论】: