Sqlite将文本数据类型的月/年列转换为日期

时间:2013-10-17 08:21:34

标签: sqlite

我的表中有一个月份和年份列。我想从他们那里创建一个日期。这不起作用:

select date(year || '-' || month || '-' || 01)  from utilities

我的数据如下:

------------
|month|year|
|   12|2013|
|    1|2010|
------------

2 个答案:

答案 0 :(得分:1)

这对我有用:

  select max(date(year || '-' || SUBSTR('0' || month, -2, 2)  || '-' || '01')) as maxdate,  month, year from utilities

答案 1 :(得分:1)

SQLite接受YYYY-MM-DD格式,因此只需关注第1到9个月:

SELECT DATE(year||'-'||CASE WHEN month<10 THEN '0'||month ELSE month END||'-0

1' );