小提琴:http ://sqlfiddle.com/#!9/c1495/1
我有一个名为“位置”的表:
id name parent
1 Sweden 0
2 England 0
3 Stockholm 1
4 Vasteras 1
5 Town 3
6 Town 4
7 London 2
8 Town 7
和名为“闭包”的表:
parent child depth
1 1 0
1 3 1
1 4 1
1 5 2
1 6 2
2 2 0
2 7 1
2 8 2
3 3 0
3 5 1
4 4 0
4 6 1
5 5 0
6 6 0
7 7 0
7 8 1
8 8 0
现在,我想将手头上的名称层次结构转换为位置 ID。
示例:瑞典 => 斯德哥尔摩 => 城镇将产生:
id name parent
1 Sweden 0
3 Stockholm 1
5 Town 3
如果不返回任何名为“城镇”但父母不完全相同的地方,我怎么能做到这一点?