1、如果使用MySQL直连,可以参考下述代码
FIND_IN_SET([督导id],[CURRENT_USER.督导ID])>0
参考函数注解:https://dev.mysql.com/doc/refman/5.7/en/string-functions.html#function_find-in-set
2、如果使用HANA直连,可以参考下列代码:
locate(concat([类别],','),concat([CURRENT_USER.类别],','))>0
3、如果是SQL Server直连,可以参考下列代码:
写法一:如果[CURRENT_USER.门店] 字段的长度不等,可以用这个:
CHARINDEX(','+[shopping_area]+',' , ','+[CURRENT_USER.所在省份]+',') > 0
写法二:如果[CURRENT_USER.工号] 字段长度相等,不存在:当Member_Id为10,100,1000的情况的时候可以简写:
CHARINDEX(','+[Member_Id]+',', ','+[CURRENT_USER.工号]+',')>0
4、如果是PostgreSQL直连,可以参考下列代码:
写法一
position([dept_name] in [CURRENT_USER.deptcode]) > 0
写法二 (推荐写法)
cast([门店id] as varchar) = ANY(string_to_array([CURRENT_USER.门店],’,’))
5、如果是Clickhouse直连,可以参考下列代码:
写法一,适用于没有null的数据集:
has(splitByChar(',',[CURRENT_USER.所在地区1]),[省份])>0
写法二(推荐写法):
has(cast(splitByChar(',',[CURRENT_USER.城市]),'Array(Nullable(String))'),[城市])>0
6、如果是Oracle直连,可以参考下列代码:
instr([CURRENT_USER.GID],[STORE_GID]) > 0
7、如果是TiDB直连,可以参考下列代码:
FIND_IN_SET([督导id],[CURRENT_USER.督导ID])>0
8、如果是Greenplum直连,可以参考下列代码:
[order_id] in (select unnest(string_to_array([CURRENT_USER.order_id],',')))
9、如果是Doris数据库直连,可以参考下列代码:
find_in_set([机构大区],[CURRENT_USER.机构大区])>0
以Oracle直连为例,直接“> 0”这种写法可能会存在模糊查找的问题,如果要的是精确查找,这时候需要前后加特殊字符隔开,比如写成:
instr(','||[CURRENT_USER.城市]||',' , ','||[城市]||',') > 0
更多数据库语法欢迎补充...