Postgresql:在数组中搜索任意数量的输入

Postgresql:在数组中搜索任意数量的输入,sql,arrays,postgresql,Sql,Arrays,Postgresql,我的表(表1)中有一条记录,其名称为“John Wood Doe Smith”,即使用户键入任何可能的组合:“John Doe”、“Jonn Wood Smith”等,我也希望返回该记录 我实现了一个collumn(fullName),它是一个包含所有名称的数组,并打算像这样搜索它: SELECT * FROM table1 WHERE ({"Wood","Doe"}) IN ANY (fullName) 您是否知道这是否可能和/或解决此类问题的最佳方法是什么?我将使用postgresql,因

我的表(表1)中有一条记录,其名称为“John Wood Doe Smith”,即使用户键入任何可能的组合:“John Doe”、“Jonn Wood Smith”等,我也希望返回该记录

我实现了一个collumn(fullName),它是一个包含所有名称的数组,并打算像这样搜索它:

SELECT * FROM table1 WHERE ({"Wood","Doe"}) IN ANY (fullName)
您是否知道这是否可能和/或解决此类问题的最佳方法是什么?我将使用postgresql,因此专有方法、函数等不是问题。它不需要是与其他数据库兼容的方法


注意:fullName是一个类似于{“John”、“Wood”、“Doe”、“Smith”}

您应该使用数组运算符

SELECT * FROM users WHERE array['Wood','Doe'] <@ fullname;