public List<LineageRel> analyzeLineage(String statement) {
        // 1. Generate original relNode tree
        Tuple2<String, RelNode> parsed = parseStatement(statement);
        String sinkTable = parsed.getField(0);
        RelNode oriRelNode = parsed.getField(1);

        // 2. Build lineage based from RelMetadataQuery
        return buildFiledLineageResult(sinkTable, oriRelNode);
    }
@Test
    public void testAnalyzeLineage() {
        String sql = "INSERT INTO TT SELECT a||c A ,b||c B FROM ST";
        String[][] expectedArray = {
            {"ST", "a", "TT", "A", "||(a, c)"},
            {"ST", "c", "TT", "A", "||(a, c)"},
            {"ST", "b", "TT", "B", "||(b, c)"},
            {"ST", "c", "TT", "B", "||(b, c)"}
        };

        analyzeLineage(sql, expectedArray);
    }