Този анализатор е написан отдавна и обработката на множество стойности в име на резултат се появи едва по-късно.
Променете този ред в цитирания от вас анализатор:
single_source = ( (Group(database_name("database") + "." + table_name("table")) | table_name("table")) +
до
single_source = ( (Group(database_name("database") + "." + table_name("table*")) | table_name("table*")) +
Когато стартирам вашия примерен израз през синтактичния анализатор select_stmt, сега получавам това:
select * from xyz inner join dhf on df = hfj where z > 100
['SELECT', ['*'], 'FROM', 'xyz', 'INNER', 'JOIN', 'dhf', 'ON', ['df', '=', 'hfj'], 'WHERE', ['z', '>', '100']]
- columns: ['*']
- table: [['xyz'], ['dhf']]
[0]:
['xyz']
[1]:
['dhf']
- where_expr: ['z', '>', '100']