我想在这个答案帖子中模仿解决方案:Sqlite convert string to date
我遇到的问题是我的原始文本日期字段包含以下格式的日期:
1/5/2014 0:00:00
而不是:
01/05/2014 0:00:00
我如何解释这个单位数的月/日变化并根据我的目的调整代码?我想不出一个体面的方式。我曾想过使用excel创建一个我可以加入的转换表。有更优雅的方法吗?
2014年10月2日编辑:
我原本以为会有更多像81种可能的组合来识别。或者也许我没有想到更简单的方法?
1/1/
1/2/
1/3/
1/4/
1/5/
1/6/
1/7/
1/8/
1/9/
2/1/
2/2/
2/3/
2/4/
2/5/
2/6/
2/7/
2/8/
2/9/
...
答案 0 :(得分:1)
一位或两位数字段有八种不同的组合;你只需要检查所有这些:
SELECT CASE
WHEN Trans_Date LIKE '_/_/____ _:__:__' THEN substr(Trans_Date, 10, 1)
WHEN Trans_Date LIKE '_/_/____ __:__:__' THEN substr(Trans_Date, 10, 2)
...
END AS Hour,
...
FROM LS2014