我正在尝试构建一个查询,该查询将返回第二列之后任何字段存在差异的所有行,具体取决于前面字段值的动态组合。
场景与此类似:
我打算向某人询问他们想要购买的产品的一系列问题。在确定他们想要购买的产品类型后,我会问另一个问题。根据他们给出的答案,我可能会问另一个问题,但问题可能因第一个答案而异。
以下是一组示例数据:
Item|Question1|Answer1|Question2|Answer2|Question3|Answer3
123|Front Door|Material|Wood|Type of Wood|Oak|Color|Red
456|Front Door|Material|Wood|Type of Wood|Oak|Color|Tan
789|Front Door|Material|Wood|Type of Wood|Oak|NULL|NULL
321|Front Door|Material|Steel|Type of Steel|T304|NULL|NULL
654|Front Door|Material|Steel|NULL|NULL|NULL|NULL
987|Closet Door|Material|Wood|Type of Wood|Oak|Color|Red
741|Closet Door|Material|Wood|Type of Wood|Oak|Color|Tan
852|Closet Door|Material|Steel|Type of Steel|T304|NULL|NULL
963|Closet Door|Material|Steel|Type of Steel|T304|NULL|NULL
我希望返回基于前一个答案的问题顺序存在差异的所有行,因此以下行将返回:
123|Front Door|Material|Wood|Type of Wood|Oak|Color|Red
456|Front Door|Material|Wood|Type of Wood|Oak|Color|Tan
789|Front Door|Material|Wood|Type of Wood|Oak|NULL|NULL
这是因为我忘了问789的“颜色”,或者我不需要为123和456询问“颜色”
321|Front Door|Material|Steel|Type of Steel|T304|NULL|NULL
654|Front Door|Material|Steel|NULL|NULL|NULL|NULL
这是因为我忘了问654的“钢铁类型”,或者我不需要问它是否为321。
我有一个查询来确定问题的顺序是否存在差异,但无法弄清楚如何将其基于上一个问题的答案。
提前致谢!