Parsesql在嵌套语句中找到比较

时间:2015-08-14 12:10:48

标签: python sql parsing

我遇到以下问题,给出select * where x <> 12;这样的查询我希望找到所有比较,在本例中为x <> 12

问题在于,由于解析查询的递归结构,此代码将打印None

import sqlparse

sql_string = 'select * where x <> 12;' 
print sqlparse.parse(sql_string)[0].token_next_by_instance(0, Comparison)

在列表中使用展平方法时,结果是一个令牌列表,这些令牌不提供调用token_next_by_instance所需的信息。在sqlparse创建的数据结构中递归搜索比较的最佳方法是什么。

0 个答案:

没有答案