您可以通過函數更改MySQL排序嗎?我試圖按照任意順序對我的值進行排序。按自定義順序對包含字母和符號的值進行排序
當前正在尋找方法來注入一個函數,可以幫助我在這裏添加一列並修改導入。
這就是我想要的順序:
AAA
AA+
AA
AA-
A+
A
A-
BBB+
BBB
BBB-
BB+
BB
BB-
B+
B
B-
CCC+
CCC
CCC-
CC
這是使用排序我的結果:
A
A+
A-
AA
AA+
AA-
AAA
B
B+
B-
BB
BB+
BB-
BBB
BBB+
BBB-
C
CC
CCC
CCC+
CCC-
編輯: 嘗試,但得到的語法錯誤:
CREATE FUNCTION sortRating (s CHAR(20))
RETURNS INT(2)
DECLARE var INT
CASE s
WHEN 'AAA' THEN SET var = 1
WHEN 'AA+' THEN SET var = 2
ELSE
SET VAR = 3
END CASE
RETURN var
END;
你只有在字符串的開頭字母? – 2015-03-02 16:32:07
這組數值是有限的嗎?如果是這樣,那麼創建具有分配的等級值的查找表將是最容易的。 – 2015-03-02 16:32:28
yes-值是有限的。正在研究用大量的case語句編寫我的第一個存儲過程。 @MichaelBerkowski - 查找表是什麼意思? – ovatsug25 2015-03-02 16:33:39