我有一个表(命名单位),结构如下:id type type_id name parent hide
====================================================
12 child 2 no1-r 36 0
32 child 2 no2-l 0 0
36 parent 1 no1 0 0
42 parent 1 no4 0 0
59 child 2 no5-t 0 0
60 child 2 no6-r 72 0
63 child 2 no6-l 72 0
72 parent 1 no6 0 0
81 parent 1 no7 0 0
94 parent 1 no8 0 0
95 parent 1 no9 0 0
97 child 2 no9-r 95 0
99 child 2 no9-t 95 0
我要做的是遍历所有id,如果id在parent中不存在并且type_id=1,则将hide设置为1。所以我的输出表的结果是:id type type_id name parent hide
====================================================
12 child 2 no1-r 36 0
32 child 2 no2-l 0 0
36 parent 1 no1 0 0
42 parent 1 no4 0 1
59 child 2 no5-t 0 0
60 child 2 no6-r 72 0
63 child 2 no6-l 72 0
72 parent 1 no6 0 0
81 parent 1 no7 0 1
94 parent 1 no8 0 1
95 parent 1 no9 0 0
97 child 2 no9-r 95 0
99 child 2 no9-t 95 0
所以基本上,因为ID42,81和94在父级中不存在,所以它们的hide值被设置为1。然而,ID36在父级中确实存在,因此不受影响,而且ID32也不受影响,即使它在父级中不存在,因为它的type_id是2。
我无论如何也不能考虑在这个表上运行什么MySQL(运行版本5.6.44)更新来实现这个输出,所以任何帮助都将非常感激!