我有一张“收费”表,在此表中有一个ID,说明,价格和位置。 我想做的是生成一个查询,该查询将与表中的描述匹配,并为我提供一个地点的两个定价列。到目前为止,我能做的最好的事情就是给我两个位置之间的重复:
select charge1.description, charge1.price price1, charge2.price price2
from charge charge1 inner join
(
select * from charge
) charge2
on LOWER(charge1.description) = LOWER(charge2.description)
where charge1.id != charge2.id
and charge1.location != charge2.location;
这将给出如下结果:
Description | price1 | price2
-----------------------------
burger | 5 | 10
burger | 10 | 5
steak | 40 | 20
steak | 20 | 40
我想要一个类似的结果
Description | price1 | price2
-----------------------------
burger | 5 | 10
steak | 40 | 20
答案 0 :(得分:1)
这是您想要的吗?
console.log(!!'false')
我认为没有必要对select c1.description, c1.price as price1, c2.price as price2
from charge c1 inner join
charge c2
on LOWER(c1.description) = LOWER(c2.description)
where c1.id < c2.id and c1.location <> c2.location;
进行比较,但是如果没有示例数据,我不确定这是否成立。