首页 > 解决方案 > SQL删除其中column_b不包含column_a

问题描述

domain      | email
------------|---------------------
banana.com  | user@banana.com,user@gmail.com
pear.com    | user@yahoo.com
grape.com   | user@aol.com

我想删除“电子邮件”中不包含“域”的所有行。

所以,在上面的例子中,#2 和#3 应该被删除,只剩下#1。

对于有经验的 SQL 用户来说,这可能很简单,但作为新手,经过搜索,我无法弄清楚如何做到这一点。任何朝着正确方向的线索将不胜感激。

我正在使用 PostgreSQL。

标签: sqlpostgresqlsql-delete

解决方案


您可以将strpos字符串函数用作:

delete from tab where strpos(email,domain)=0;

Rextester 演示


推荐阅读