一列是否包含另一列字符串的某些部分?(postgres)

Sam*_*lli 1 sql postgresql

我想检查另一列中是否包含列字符串。

表电子邮件列表:

    complete_email
---------------------------------
    zazumba@hotmail.com
    jere@yahoo.com
    maryhelp@aol.com
    neil@cde.de
    john_smith@zodll.ne
Run Code Online (Sandbox Code Playgroud)

表电子邮件部分:

    username
--------------------
    zazumba
    maryhelp
    neil
Run Code Online (Sandbox Code Playgroud)

我要执行的查询:

select e.complete_email 
   from emailslist e, emailpartial ep 
      where e.complete_email like '%ep.username%';
Run Code Online (Sandbox Code Playgroud)

我期望这样的结果:

    complete_email
---------------------------
    zazumba@hotmail.com
    maryhelp@aol.com
    neil@cde.de
Run Code Online (Sandbox Code Playgroud)

但是,这不是编写此 sql 查询的正确方法。有人可以澄清我该如何写吗?

谢谢,塞缪尔

Lin*_*ger 5

我相信您正在寻找的是:

select e.complete_email 
from emailslist e, emailpartial ep 
where e.complete_email like '%' || ep.username || '%';
Run Code Online (Sandbox Code Playgroud)