gpt4 book ai didi

MySQL帮助: How to find all orders from a customer till sum(price) <= 150 and status ='unpaid'

转载 作者:行者123 更新时间:2023-11-29 14:41:13 26 4
gpt4 key购买 nike

示例:

select orderid
from `orders`
where sum(price) <= 150 and status=unpaid and ownerid=110786

但是没有成功。

详细信息:我想查找来自客户 (ownerid) 且状态为未付款 (UNPAID) 且最高 (price) 150 的所有订单。

这是必需的,因为我希望客户能够用可用资金支付尽可能多的订单。

<小时/>

对于 1 号答案可能按预期工作,但代码中存在一些错误,因为它没有生成所需的结果,并且当我还添加 TotalSoFar 以查看该值是否正常工作时,所有行都在此字段中显示其双倍价格,而不是最后一列价格+当前列价格值。我不确定我的详细信息是否有意义,但我只是想说明 mysql 正在返回什么结果:)

答案 2您写的是状态而不是付款状态,因此结果是空白的,但是当我更正它并运行以下查询时:

从 paymentstatus='unpaid' 且 Ownerid=110786 的订单中选择 orderid、price、designname,按 sum(price) <= 50 的 orderid 分组

RESULT SHOWN IS: 

orderid price designname
114279 15 Premier Academy
114280 10 Troop
114386 15 Texas Tennis
114408 20 Nokia Developer
114508 15 Gold Lighthouse

如您所见,总价不低于 50 美元,而是 75 美元。请帮助...谢谢!

另外,模组们请注意,stackoverflow 是一项很棒的服务,但格式化评论是一项非常艰巨的工作。请以某种方式让它变得简单。我尝试了太多次以易于阅读的方式格式化评论,但所有努力都失败了,所以现在我在回答我的问题区域中编写评论

但是,这个问题到目前为止还没有得到正确的回答。虽然好心人都在尽力帮助我。我再次重新发布了这个问题,因为很长时间以来没有人提出可行的解决方案,但新问题也没有得到有效解决方案的回答:)

请大家以某种方式帮助我。我想做的是一种所有推车都以这种或那种方式做的事情。如果客户有 10 个订单,每个订单价格为 10 美元,总计为 100 美元,但他只有 50.00 美元。他如何查看这个金额可以支付多少订单?这就是我需要查找/编码的全部内容。

最佳答案

我认为您可以使用 MySQL 变量来完成此操作...使用一个作为运行总计并应用 HAVING 子句将其截断...

select
o.orderid,
o.price,
@RunningTotal := @RunningTotal + o.price as TotalSoFar
from
orders o,
( select @RunningTotal := 0 ) sqlvars
where
o.ownerid = 110786
and o.status = unpaid
having
TotalSoFar <= 150

@RunningTotal 变量不断添加到“动态”中,并卡在查询结果的最后一列中,但仍保留为限定 WHERE 子句的下一条记录的变量。因此,即使您的订单总数达到 200、300,无论如何,最终的 HAVING 子句也会通过使用“TotalSoFar”列作为基础删除所有其他行来切断这些订单...

关于MySQL帮助: How to find all orders from a customer till sum(price) <= 150 and status ='unpaid' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7962104/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com