我有我想報告的信息,目前通過excel中的查找表進行分類。此表將檢查來自SQL數據庫中我的days_past_due
列的數據並返回一個字符串。SQL通過布爾值從字符串列表返回
I.E.days_past_due = 5
會返回字符串'5-10天過期'
我有大約8個不同的數字範圍,將獲得自己的字符串。他們是否將這種方式硬編碼到SQL查詢中?
值得一提的是字符串數據不在我的數據庫中。
我有我想報告的信息,目前通過excel中的查找表進行分類。此表將檢查來自SQL數據庫中我的days_past_due
列的數據並返回一個字符串。SQL通過布爾值從字符串列表返回
I.E.days_past_due = 5
會返回字符串'5-10天過期'
我有大約8個不同的數字範圍,將獲得自己的字符串。他們是否將這種方式硬編碼到SQL查詢中?
值得一提的是字符串數據不在我的數據庫中。
使用CASE函數來實現此目的。
SELECT CASE
WHEN days_past_due = 5 THEN '5-10 Days Past due'
WHEN ......
ELSE <returndefaultcase>
END
FROM <tablename>
你可以使用CASE邏輯來獲得這個。
SELECT CASE WHEN days_past_due = 5 THEN '5-10 Days Past due'
WHEN ...
END
FROM YourTableName
是的。你是對的。昨天我研究這個問題時,我的腦部完全褪色了。我今天早上要發佈這個答案。 –
'case' /'when'。 – melpomene
聽起來像你需要一個'case'語句。基本上你可以告訴查詢返回一個基於條件的特定值。你可以發佈實際的SQL查詢嗎?以此爲指導:https://www.w3schools.com/sql/func_mysql_case.asp – tommyO
只需使用CASE和BETWEEN語句。 –