Python 当使用like和any时,打印编译的sqlalchemy语句会生成NULL参数_
我正在尝试查看sqlalchemy select对象的编译版本。有一次,我需要查看Python 当使用like和any时,打印编译的sqlalchemy语句会生成NULL参数_,python,postgresql,sqlalchemy,Python,Postgresql,Sqlalchemy,我正在尝试查看sqlalchemy select对象的编译版本。有一次,我需要查看varchar[]列是否包含子字符串列表中的任何字符串。(我的查询的其他部分在u中使用,字符串列表正在工作。)为什么要打印: 。。。与任何(空) 而不是 。。。与任何('list%','of%','substrings%')一样 注意(我在u中使用的查询的其他部分以及字符串列表正在工作。) 实际结果 SELECT * FROM Schema.MyTable WHERE lower(array_to_strin
varchar[]
列是否包含子字符串列表中的任何字符串。(我的查询的其他部分在u中使用,字符串列表正在工作。)为什么要打印:
。。。与任何(空)
而不是
。。。与任何('list%','of%','substrings%')一样
注意(我在u中使用的查询的其他部分以及字符串列表正在工作。)
实际结果
SELECT * FROM Schema.MyTable
WHERE lower(array_to_string(Schema.MyTable.some_arr_col, ' ')) LIKE ANY (NULL)
SELECT * FROM Schema.MyTable
WHERE lower(array_to_string(Schema.MyTable.some_arr_col, ' ')) LIKE ANY ('list%', 'of%', 'substrings%')
预期结果
SELECT * FROM Schema.MyTable
WHERE lower(array_to_string(Schema.MyTable.some_arr_col, ' ')) LIKE ANY (NULL)
SELECT * FROM Schema.MyTable
WHERE lower(array_to_string(Schema.MyTable.some_arr_col, ' ')) LIKE ANY ('list%', 'of%', 'substrings%')
这回答了你的问题吗@roganjosh我已经在使用它了,但是我的问题是当我打印编译的sql语句时,数组是空的。不过,运行查询是可行的。。。