2013-03-20 3 views
1

여기 내 질문 : 내 sqlite 데이터베이스에 몇 가지 날짜를했습니다. Sqlite : 달의 날짜로 변환

2013-02-21 12:04:22 become 2 (day 2 of the month) 
2013-02-28 12:04:22 become 9 (day 9 of the month) 
2013-03-01 12:04:22 become 10(day 10 of the month) 

미리

에 감사 : 나는 다음과 같은 그 날짜를 변환 할 수있는 방법

2013-02-21 12:04:22 
2013-02-28 12:04:22 
2013-02-01 12:04:22 

:

SELECT dates FROM Table1 WHERE dates > date('now','-1 month'); 

결과는 다음과 같습니다 내가하고 싶은 다음과 같다

+0

에 많이 유지? 나는 날짜와 아무런 관계가 없다. –

+0

지금 (20/03/2013) - 1 개월 ==> 20/02/2013 이 기간 (2013 년 2 월 20 일부터 2013 년 3 월 20 일까지) 2013-02-21은이 날짜의 두 번째 날과 일치합니다. 기간 (2 일), 2013-02-28은이 기간의 9 일째에 해당합니다 ... – user2121458

답변

3

시도

select julianday(dates) - julianday(date('now','-1 month')) + 1 
from table1 
where dates > date('now','-1 month') 
+0

이걸로 첫 번째 날짜 (2013-02-21 12:04:22)는 2,50303이됩니다! 거의 완벽 :) 어떻게 정수 부분 만 유지할 수 있습니까 (2를 유지하고 0,50303을 삭제하십시오)? – user2121458

0
select cast((julianday(dates) - julianday(date('now','-1 month')) + 1)as int) 
from table1 
where dates > date('now','-1 month') 

는 정수 부분을 :) 덕분에이 숫자 2,9,10에서 온 않는 AnatolyS