gpt4 book ai didi

使用 FORMAT 函数时 MySQL 排序

转载 作者:行者123 更新时间:2023-11-29 12:21:47 25 4
gpt4 key购买 nike

我有一个查询,SUMS不同的值,然后使用ORDER BY对结果进行排序。

每当我使用 FORMAT 格式化结果时,我都会得到与不使用格式时不同的排序。

例如:

订购格式:2827.0000、1668.0000、663.1000

订购格式:663.10、2,827.00、1,668.00

什么可能导致此行为?

这是完整的查询:

SELECT
FORMAT( ( (Sum(CASE WHEN YEAR(order_date) = 2015 THEN total END) / 100) - (SELECT COALESCE( ( SUM(total) / 100), 0)
FROM returns WHERE customer = orders.customer AND YEAR(return_dat) = 2015) ), 2) AS anual

FROM orders

WHERE 1 GROUP BY customer ORDER BY anual DESC

最佳答案

对格式化字符串进行排序将导致 ASCII 字母排序。如果您希望它们按数字排序,则需要有两列:格式化的列和未格式化的列。请记住,这通常最好在应用程序层中完成。

关于使用 FORMAT 函数时 MySQL 排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28906795/

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