Q&A

  • mdb에서 날짜로 조회를 할려고 합니다.
mdb에서 날짜로 조회를 할려고 합니다.

특정한 두 날짜 즉 예를 들면 아래 2002년 5월 20일 오전 01:00 부터 2002년 5월 22일 오후 11시까지
의 레코드를 읽어 올려고 하는데, 계속 에러가 발생하고 전혀 먹히질 않네요..
예전에 MS-SQL에서는 Datepart와 Datediff 두 가지 함수를 가지고 모든지 할수 있었지만
MDB에선 통하질 않는거 같습니다. 고수님들의 많은 답변 부탁 드릴께요..

select * from Table where iDate >= '2002-05-20 오전 01:00' and iDate >= '2002-05-22 오후 11:00'

두가지 날짜 안에 해당되는 내용의 레코드를 읽어오는 방법 좀 알려주세요..

2  COMMENTS
  • Profile
    Cos Consulting 2002.05.23 15:11
    안녕하세요 코스입니다.
    DateTime 필드를 Query.SQL 같은데다 직접써서
    제대로 Parsing 이 안돼는거 같군여.
    Query.SQL.Add(Select * from Table where iDate between (:StartDate and :EndDate));
    Query.ParamByName('StartDate').asDateTime := StrToDateTime('2002-05-20 오전 01:00' )
    Query.ParamByName('EndDate').asDateTime := StrToDateTime('2002-05-22 오후 11:00' )
    Query.Open;

    이런식으로 해주시면 Param type 에 따라 각 DB 의
    Driver 에 맞춰서 Data 를 Parsing 해줍니다.
    참고로 '2002-05-20 오전 01:00' 같은 형식의 날짜는
    date/time formatting variables 에서 바꿔줄수 있고
    Default 로 windows 의 regional locale 세팅을 씁니다.


  • Profile
    유현석 2002.05.27 08:34
    님이 갈쳐 주신대루 했는데요.. 똑같은 에러가 나네여~