1

我创建了一个函数,该函数利用 sqlparse 模块从任何给定的 sql 语句中提取所有命中的表:

create or replace function my_function(x text) returns text
as $$
import sqlparse
from collections import namedtuple
from sqlparse.sql import IdentifierList, Identifier, Function
from sqlparse.tokens import Keyword, DML, Puncutation

*the rest of my parser program*

$$ language plpythonu;

当我以这种方式执行函数时:

select my_function('select foo from bar');

它返回:bar

当我以这种方式执行函数时:

select my_column, my_function(my_column) from schema.my_table;

它失败了:

错误:XX000:ImportError:没有模块名称 sqlparse (plpython.c:5038)

任何反馈将不胜感激。

4

0 回答 0