# sql-lineage-parser **Repository Path**: gbs-x/sql-lineage-parser ## Basic Information - **Project Name**: sql-lineage-parser - **Description**: SQL脚本数据血缘解析工具 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 0 - **Created**: 2025-01-12 - **Last Updated**: 2025-12-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SQL数据血缘解析器 ## 介绍 可以从各种SQL数据同步脚本中,解析出数据对象间的数据流向关系,即数据血缘,且能作到字段级别的血缘关系解析。支持主流的SQL脚本, 包括:MYSQL, ORACLE, SQLSERVER, POSTGRESQL, DB2, HIVE, ODPS。 ## 使用说明 ### SQL例子 //SQL脚本 String sql="insert into table stu_score_statistic (stu_code,total_score,avg_score) select s.code as stu_code,sum(r.score) as total_score,avg(r.score) as avg_score from stu_info s left join stu_score_record r on s.code=r.stu_code group by s.code"; //脚本类型 SqlSourceType sqlType = SqlSourceType.HIVE; //SQL中数据表默认归属的schema String defaultSchema = "db1"; ### step 1:获取血缘解析器 ISqlLineageParse parser = SqlLineageParserFactory.getDefaultParser(); ### step 2:血缘解析 ScriptSqlLineage lineage = parser.parse(sql, sqlType, defaultSchema);