【发布时间】:2019-10-29 05:28:57
【问题描述】:
我有一个带有建筑物名称的表,例如 A、B、C。这些建筑物名称可以重复。我有另一个专栏有发言权。例如第 1 层,第 2 层。同样,每个建筑物都可以有多个第 1 层。第三列有对象存在,如电视、砖块、风扇。 我想检查建筑物与相应楼层的每个组合,例如 A 楼 - 1 楼,A 楼 - 2 楼,如果存在对象“砖”,则“墙”必须存在。
示例数据: 对于每个建筑物和位置,如果存在“WALL”,则必须存在“WINDOW”、“WINDOW1”或“WINDOW2”,ELSE FLAG
BUILDING LOCATION OBJECT
A FLOOR1 WALL
A FLOOR1 WINDOW
A FLOOR2 WALL
B FLOOR1 WALL
C FLOOR1 WALL
C FLOOR1 WINDOW
期望的输出
BUILDING LOCATION ACTION
A FLOOR2 FLAG
B FLOOR1 FLAG
我尝试过使用 GROUP BY、DISTINCT、WHERE EXISTS,但我似乎无法提出正确的逻辑。
【问题讨论】:
-
更新您的问题添加清晰的数据样本和预期结果
-
@scaisEdge 添加
-
结果中不应该是
C而不是B吗?
标签: mysql mysql-workbench