2017-04-13 43 views
-2

是否有任何格式化簡寫在mysql中只能執行此操作?在我的數據庫中,我存儲了該號碼,但我正在使用一個程序,該程序使用數據庫查詢從模板創建文檔。沒有存儲過程,JavaScript或任何幻想,否則你會用這個。有沒有辦法在mysql中將2轉換爲秒,3轉換爲第三等(僅限SQL)

在我做一個switch語句之前,有沒有更好的方法來做到這一點(給定約束),我只是不知道。谷歌正在讓我失望。

+2

我不認爲有一個簡單的方法。我可能會推薦一個參考表,而不是一個巨大的開關。 –

+0

相關範圍是什麼? –

+0

@Charistine? ............ –

回答

-1

CASE是您唯一簡單的&直接方式。 雖然它取決於你的「等」多遠,它可能會變得非常巨大,顯然。

其他選項可能是User-Defined Function (UDF),您可以封裝所有轉換邏輯,使您的查詢簡單&優雅。

只需檢查您的平臺是否允許UDF,因爲有些不支持,比如Google Cloud SQL(這是MySQL裏面的)。並且請注意,它可能不是您所期望的內置函數那麼高性能。

+0

模板查詢中沒有UDF。切換它。 :-) – Charistine

0
set @x=7; 
select elt(@x,'first','second','third','fourth','fifth','sixth','seventh','eighth','ninth','tenth'); 

第七

相關問題