Sql 'like' 内条件 'exists'
Sql 'like' condition inside 'exists'
我有 2 Mysql 个表
- products 带有 varchar 列 equ 和 lik
- preferences 带有 varchar 列 equ 和 lik
我想要 select 产品中的所有内容,条件是偏好中至少有一行 preferences.equ 等于 products.equ 和 products.lik 就像 %preferences.lik%。即 products.lik 包括 preferences.lik 作为子字符串。如何构建此查询?
您可以按照您描述的方式构建它:
select p.*
from products p
where exists (select 1
from preferences pr
where pr.equ = p.equ and
p.lik like concat('%', pr.lik, '%')
);
我有 2 Mysql 个表
- products 带有 varchar 列 equ 和 lik
- preferences 带有 varchar 列 equ 和 lik
我想要 select 产品中的所有内容,条件是偏好中至少有一行 preferences.equ 等于 products.equ 和 products.lik 就像 %preferences.lik%。即 products.lik 包括 preferences.lik 作为子字符串。如何构建此查询?
您可以按照您描述的方式构建它:
select p.*
from products p
where exists (select 1
from preferences pr
where pr.equ = p.equ and
p.lik like concat('%', pr.lik, '%')
);