在 SQL 中的选择查询中返回无结果关键字



我目前正在使用以下选择查询在我的Postgres数据库中搜索

select * from res_country where code like any (array['%A%', '%BF%', '%CD%']);

它将返回与数组中的关键字匹配的记录列表。但是,会有一些关键字which returns no result。我想列出这些关键字。

例:我的数据库中有以下代码(列代码):

AAA
AA
ABF
CCC
BBC

我有一个搜索数组如下:

array['%A%', '%BF%', '%CD%', '%DA%']

正如我们所看到的

%A% matches AAA, AA, ABF
%BF% matches ABF
%CD% matches no code
%DA% matches no code

我想列出关键字,例如%CD%, %DA%

SQL Fiddle

select pattern
from
    res_country
    right join
    unnest(array['%A%', '%BF%', '%CD%', '%DA%']) p(pattern) on code like pattern
where code is null
;

最新更新