两个表: 价目表PRICE_LIST:
ITEM PRICE
MANGO 5
BANANA 2
APPLE 2.5
ORANGE 1.5
销售记录REC_SALE(交易列表)
ITEM SELLLING_PRICE
MANGO 4
MANGO 3
BANANA 2
BANANA 1
ORANGE 0.5
ORANGE 4
从 REC_SALE 中选择商品售价低于 PRICE_LIST 表中列出的 PRICE 的记录
SELECT A.*
FROM
(
select RS.ITEM,RS.SELLING_PRICE, PL.PRICE AS ACTUAL_PRICE
from REC_SALE RS,
PRICE_LIST PL
where RS.ITEM = PL.ITEM
) A
WHERE A.SELLING_PRICE < A.ACTUAL_PRICE ;
结果:
ITEM SELLING_PRICE PRICE
MANGO 4 5
MANGO 3 5
BANANA 1 2
ORANGE 0.5 1.5
我在 jupyter 笔记本中有两个相同的表作为数据框 上面使用 pandas 的 SQL 语句的等效 python 语句是什么?
最佳答案
合并
与.loc
df1.merge(df2).loc[lambda x : x.PRICE>x.SELLLING_PRICE]
Out[198]:
ITEM PRICE SELLLING_PRICE
0 MANGO 5.0 4.0
1 MANGO 5.0 3.0
3 BANANA 2.0 1.0
4 ORANGE 1.5 0.5
关于python - 类似pandas语句的SQL where子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49322418/