我们正在将bigquerysql转换为sqlserver。此查询将由python脚本调用。这是一个大查询:
select column_list
from Table_name
where (array_len(*parameter1*) <1 or column1 in (*parameter1*))
and (array_len(*parameter2*) <1 or column2 in (*parameter2*))
查询的逻辑是,如果参数1或2有值,则按它们过滤。否则,跳过此条件。
但是,参数1和2将是一个字符串列表。但是,sql server不支持数组数据类型。我们可以直接要求开发人员将参数作为接受in条件的字符串传递(例如,'string1','string2'…),但它将导致第一个条件( array_len(parameter1)
)失败。如果有,我们可以把这两个条件都做出来( array_len(*parameter1*)
以及 in (*parameter1*))
工作?
暂无答案!
目前还没有任何答案,快来回答吧!