我试着从数据库中以最高的价格获取50种产品,但如果我将限制设置为50,它只是按价格获取前50种产品的订单。这不是我想要的。如何正确设置mysql查询,或者是否应该在php fetch_assoc()中获取所有并设置限制?
SQL查询:
SELECT id, product_name, product_url, product_price, product_delivery_time, product_on_stock, product_language, product_type
FROM product
WHERE is_active = '1' AND not product_price = 'N/A'
AND product_price > (SELECT max(product_price) from product)我尝试了不同的SQL查询,但没有成功。我不太熟悉子查询,我认为问题就在某个地方。
发布于 2022-10-28 10:53:16
按价格订购。在不了解模式的情况下,这可能会有所帮助。
order by price desc limit 50
发布于 2022-10-28 13:26:22
问题是DataType:
product_price = db.Column(db.String(80))我把它换了:
product_price = db.Column(db.Numeric(15, 2))现在,(修改后的) sql查询正在工作:
SELECT id, product_name, product_url, product_price, product_delivery_time, product_on_stock, product_language, product_type
FROM product
WHERE is_active = '1' AND NOT product_price = '0'
ORDER BY product_price DESC LIMIT 50谢谢大家的帮助。
https://stackoverflow.com/questions/74234275
复制相似问题