mysql链表数据存储查询排序问题

mysql数据表中的原始数据结构:

img

-- ----------------------------
-- Table structure for asort
-- ----------------------------
DROP TABLE IF EXISTS `asort`;
CREATE TABLE `asort`  (
  `from` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `to` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `mark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of asort
-- ----------------------------
INSERT INTO `asort` VALUES ('START', 'A', '');
INSERT INTO `asort` VALUES ('A', 'B', '');
INSERT INTO `asort` VALUES ('A', 'F', 'FALSE');
INSERT INTO `asort` VALUES ('F', 'B', 'RETURN');
INSERT INTO `asort` VALUES ('B', 'C', '');
INSERT INTO `asort` VALUES ('C', 'D', '');
INSERT INTO `asort` VALUES ('C', 'G', 'FALSE');
INSERT INTO `asort` VALUES ('G', 'D', 'RETURN');
INSERT INTO `asort` VALUES ('D', 'H', 'FALSE');
INSERT INTO `asort` VALUES ('H', 'D', 'RETURN');
INSERT INTO `asort` VALUES ('D', 'E', '');
INSERT INTO `asort` VALUES ('E', 'END', '');
INSERT INTO `asort` VALUES ('E', 'I', 'FALSE');
INSERT INTO `asort` VALUES ('I', 'END', 'RETURN');

如何实现如下查询排序结果:

img

请点击采纳 谢谢

set @i=0;
select  (@i:=@i+1) 排序编号,`from` 节点排序 from ((select  `from`  from asort) UNION 
    (select `to` from asort )) as temp;