我现在已经尝试了2天并且正在研究这个但是我找不到任何解决方案
所以我有3个表我想要的是,如果一个产品只有单个价格,那么如果产品有多个价格则显示单个价格,然后显示该产品的最低价格和最高价格。
所以在产品ID中,2号有3个价格。
因此,如果产品具有单一价格,那么每种产品都会有其价格 如果产品有多个价格,则显示最低价格$ 19.00 __ $ 26.00最高价格。
所以我该怎么做?我怎么能在页面上显示它?
product (id, price)
1 1
2 2
3 3
product_has_price (product_id, price_id)
1 1
2 2
2 3
3 4
2 5
price (id, price)
1 14.00
2 19.00
3 24.00
4 35.00
5 26.00
谢谢,如果有人帮忙
答案 0 :(得分:1)
select p.id
, case
when min(i.price) <> max(i.price) then
concat('$ ', min(i.price), '__ $ ', max(i.price))
else concat('$ ', min(i.price))
end as PriceDescription
from product p
join product_has_price php
on p.id = php.product_id
join price i
on i.id = php.price_id
group by
p.id