magento从查询结果中加入产品sku的实体ID

时间:2017-05-26 10:18:29

标签: mysql magento

您正在运行以下查询

SELECT * FROM `catalog_product_entity_text` WHERE `value` LIKE '%knife%' OR `value` LIKE '%Knife%' OR `value` LIKE '%KNIFE%' OR `value` LIKE '%razor%' OR `value` LIKE '%Razor%' OR `value` LIKE '%RAZOR%'

我不确定该列是否为案例敏感

这可以用实体ID拉出所有结果,但这对我来说无用我需要产品sku我怎么能在结果中实现这一点我假设我必须加入但是什么表和如何。

所以我想看到的结果是产品sku符合我在描述上的搜索条件

谢谢

用这个解决了它

选择p.entity_id,p.sku,a.entity_id作为description_id,a.value from catalog_product_entity p inner join catalog_product_entity_text a on p.entity_id = a.entity_id WHERE a.value LIKE'%knife%'或a.value喜欢'%Knife%'或a.value LIKE'%KNIFE%'

不确定这是否是最有效的方法

在包含200,000多种产品和描述以及大量文本的数据库

也不确定这是否占据了magento DB中的所有内容

2 个答案:

答案 0 :(得分:0)

让我们试试这句话。我认为它可以帮到你:

select *
from catalog_product_entity_text
where LOWER(value) LIKE LOWER('%aBcDeF%');

答案 1 :(得分:0)

要提取产品sku,请使用entity_id(来自SQL查询结果)从sku表中搜索catalog_product_entity

像这样:

SELECT sku from catalog_product_entity WHERE entity_id=23123