您好,我的 MYSQL 数据库包含名为new-sell
的表,其中包含以下列registeredDay
和productFinalPrice
已登记的购买价值和进入的日期。
|=====================================|
| productFinalPrice | registeredDay |
|=====================================|
| 600,00 | 2017-09-19 18:45:16 |
| 435,50 | 2017-09-18 18:45:16 |
| 817,60 | 2017-09-17 18:45:16 |
| 176,00 | 2017-09-16 18:45:16 |
| 600,00 | 2017-09-15 18:45:16 |
| 600,00 | 2017-09-14 18:45:16 |
| 600,00 | 2017-09-13 18:45:16 |
| 842,10 | 2017-09-20 18:45:16 |
| 415,20 | 2017-09-21 18:45:16 |
| 230,45 | 2017-09-22 18:45:16 |
| 400,00 | 2017-09-20 18:45:16 |
| 375,00 | 2017-09-20 18:45:16 |
=======================================
我的想法如下;
在productFinalPrice
和BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()
中以单独的时间间隔 获取BETWEEN DATE_ADD(CURDATE(), INTERVAL -2 day) AND CURDATE()
,DATE_ADD
的想法是2017-09-20
可用 除法,除法和乘法的计算可用。
收到根据列出上面的两个天数应该以这种方式处理 ,划分和乘以。
示例:的
第一个间隔1天 - 2217,10 - 1617,10 = 600÷1617,10 = 0,37×100 = 某人能否想法如何适合 计算 查询mysql < /强> 能够获取 输入值 在点 可能以适合拟合 减法< / strong>,划分,乘法 模型 间隔日过滤 exibity结果< / strong>使用 很抱歉,问题的长度,但希望提供有关我的问题的最佳信息。 我没有找到任何关于如何使用时间间隔过滤器加入计算的内容,如果有人可以帮助我,我将不胜感激:] R$ 1617,10
导致总2017-09-19
和第二个间隔2天 R$ 2217,10
导致总计{{ 1}} 记住这些数据 变量,根据更改 到 一天 信息 请求:
37,10%
R$ 1617,10
和R$ 2217,10
通过这些咨询 SELECT productFinalPrice FROM new_sell WHERE registeredDay BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()
SELECT productFinalPrice FROM new_sell WHERE registeredDay BETWEEN DATE_ADD(CURDATE(), INTERVAL -2 day) AND CURDATE()
BETWEEN DATE_ADD(CURDATE(), INTERVAL -1 day) AND CURDATE()
?
答案 0 :(得分:0)
你能试试吗?我用你的样本数据,它的工作原理。请跟我说。
SELECT PRICE_T / (PRICE_T2-PRICE_T) * 100 AS PERC
FROM (SELECT SUM(CASE WHEN RN=1 THEN PRICE_I2 ELSE 0 END) AS PRICE_T
, SUM(PRICE_I2) AS PRICE_T2
FROM (SELECT CAST(registeredDay AS DATE) AS DDATE
, SUM(productFinalPrice) AS PRICE_I2
, @RN:=@RN+1 AS RN
FROM new_sell
CROSS JOIN (SELECT @RN:=0) X
WHERE registeredDay BETWEEN DATE_ADD(CURDATE(), INTERVAL -2 day) AND CURDATE()
GROUP BY CAST(registeredDay AS DATE)
ORDER BY CAST(registeredDay AS DATE)
) B
) C;
输出:
PERC
37,1057513914657