我正在嘗試從字符串字段中提取最后一個單詞...如果它是月份的名稱,我想將其轉換為 Number 中的月份。它正在工作,但時間太長了。我們可以包含“不正確的日期時間值”或日期格式錯誤然后顯示空白?如果然后其他不工作...case when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "January" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "February" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1))= "March" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "April" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "May" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "June" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "July" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "August" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "September" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "October" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "November" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))when (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) = "December" then (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))else nullend as `Last_NuM_Month`此示例正在運行,但時間太長。
2 回答

皈依舞
TA貢獻1851條經驗 獲得超3個贊
你可以改成這樣:
CASE
WHEN (SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)) IN
(
'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
)
THEN (MONTH(str_to_date((SUBSTRING_INDEX(tbl_StringsList.items, " ", -1)),'%M')))
ELSE NULL
END AS `Last_NuM_Month`
在雷克斯特測試
- 2 回答
- 0 關注
- 169 瀏覽
添加回答
舉報
0/150
提交
取消