首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sql反向搜索产品和折扣

Sql反向搜索产品和折扣
EN

Stack Overflow用户
提问于 2019-12-09 09:24:26
回答 2查看 54关注 0票数 0

我有两张桌子,一张是商品的,一张是折扣的。折扣表如下:

代码语言:javascript
复制
ID | Name         | Percentage | Product Name Search Param
-----------------------------------------------------------
1  | Black Friday | 50         | a
2  | White Friday | 75         | b

产品表如下所示:

代码语言:javascript
复制
ID | Name         | Price 
--------------------------
1  | Shoes        | 2500 
2  | Hat          | 1500
3  | Baseball cap | 500

如果产品名称包含Discount.Product名称搜索参数值,则Product将获得折扣百分比。我从折扣中得到这些产品。

代码语言:javascript
复制
SELECT * FROM Products WHERE name LIKE '%a%'

但是我不知道如何获得一种产品折扣。

我想买有折扣的ID 2的产品。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-09 09:28:32

您可以使用like条件加入:

代码语言:javascript
复制
select p.*, d.*
from product p
inner join discounts d 
    on p.name like concat('%', d.product_name_seach_param, '%')

注意:就关注点而言,你的设计看起来不太好。最好有一个产品参考表和一个折扣参考表,以及一个将产品与折扣联系在一起的表格。

票数 1
EN

Stack Overflow用户

发布于 2019-12-09 09:28:40

一个简单的内部连接应该做到这一点:

代码语言:javascript
复制
SELECT *
FROM Products
JOIN Discounts ON Products.name LIKE CONCAT('%', product_name_search_param`, '%')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59245847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档