被我用于 FME 的 InlineQuerier 转换器的 SQL 语句卡住了。我通常不太使用 SQL 代码,只使用 if 来执行简单的一对一连接。我目前正在使用一个包含多个属性的数据框,我想基于这些创建一个额外的属性。一个简短的例子:
ID road_name road_type Type Traffic
1 bakerstreet elements B light
2 bakerstreet elements B light
3 piccadilly circus asphalt A heavy
4 woodstreet concrete A heavy
5 settlerstreet concrete A heavy
6 woodstreet concrete A heavy
7 settlerstreet concrete A heavy
8 settlerstreet concrete B heavy
我正在尝试根据所有 4 个属性为所有功能提供一个唯一的 RoadID,以便我以后可以合并它们。新属性 RoadID 必须是数据类型 Integer,并且值应该匹配 4 个属性的唯一组合。
结果应该是这样的:
ID road_name road_type Type Traffic RoadID
1 bakerstreet elements B light 1
2 bakerstreet elements B light 1
3 piccadilly circus asphalt A heavy 2
4 woodstreet concrete A heavy 3
5 settlerstreet concrete A heavy 4
6 woodstreet concrete A heavy 3
7 settlerstreet concrete A heavy 4
8 settlerstreet concrete B heavy 5
我是使用 concat 还是应该使用简单的 if then 语句来解决问题?