2014-09-11 2 views
0
sqlite3를에서

, 내가 같은 테이블에 항목이있는sqlite3를 비교 날짜

: ('앨리스', '1986년 10월 10일');

날짜가 YYYY-MM-DD 인 사람 이름입니다.

MM과 DD가 동일한 경우 (10-10을 비교하는 것뿐만 아니라) 비교하는 방법은 무엇입니까? 테이블의 값이 MM과 DD가 같은 값인 경우을 비교합니다. 일명 MM과 DD의 값은 같습니다.

+0

'여기서 strftime (field1, '% Y- % m') = strftime (field2, '% Y- % m')'은 실제 날짜/시간 필드이고 varchar가 아닌 것으로 가정합니다. –

+0

예, 실제 날짜/시간 필드입니다. 그러나 field1과 field2는 무엇입니까? 'alice'변수는 Name이라는 Varchar입니다. 그래서 strftime (이름, '% Y- % m') = strftime (이름, '% Y- % m') ?? –

답변

0

다음과 같은 쿼리는 아마 당신은 무엇을 찾고 있습니다 : 당신의 <datefield>YYYY-MM-DD 형식으로 저장되어있는 경우

select * from <table_name> 
where strftime('%m', <datefield>) == strftime('%d', <datefield>); 

, 기능 strftime('%m', ..)는 월 부분을 추출하며, strftime('%d', ..) - 날 부분 .

+0

이것은 완벽하게 작동했습니다! 도움 주셔서 감사합니다. 나는 아직도 기능에 대해 읽고 그것들을 실용화하기 위해 애 쓰고있다. 다시 한 번 감사드립니다! –