我一直在尋找了幾個小時試圖找出爲什麼ORDER BY不會對公式正常工作:ORDER BY公式工作不正常
SELECT *,
FORMAT(LowPriceCompetitor - (-(products.distPrice + 0.30)/((Rates.rate + 0.02 + Rates.defaultMarkup) - 1)), 2) AS margin
FROM products
LEFT JOIN Rates ON products.MasterCategoryID = Rates.categoryID
ORDER BY margin
我怎樣才能讓MySQL正確排序的輸出式?這應該工作!
它*做*工作。 ORDER BY排序指定序列中的行。正如你通過查閱MySQL文檔發現的那樣,'FORMAT'函數返回一個字符數據類型。 ORDER BY正在操作字符串。而你想要的是對數值進行排序。將字符數據類型轉換爲數字的一種快速方法是將「0」添加到「123.4'+ 0」。 – spencer7593