Q&A

  • 시간을 오전,오후로 검색하고 싶은데요?
DB안에 시간이 저장되어있고 이것을 오전이건과 오후인건을 구분하여 검색하고 싶은데 어떻게 해야지요?

먼저 오전인것을 저는

SQL.Add(' Select * from A ');

SQL.Add(' Tim >=:FrontP And ');

SQL.Add(' Tim <=:TOP ');

PrePare;

ParamByName('FrontP').AsTime := StrToTime('12:00 am');

ParamByName('TOP').AsTime := StrToTime('11:59 am');

open;

여기서 Error메세지가 뜨네요.

분명 StrToTime에서 잘못되것같은데..



아시는 분 불상한 양을 구원하소서..

1  COMMENTS
  • Profile
    나두초보~~ 2001.11.13 17:21
    안녕하세요..^_^;

    훔.... 저두 초보지만 몇자 적어 보겠습니다..



    님의 쿼리문을 보면 어느 시간대 검색 같군여..

    그럼 time between :a and :b 라고 하면 될 것이고..



    그리고 오전, 오후 검색은... 하루는 24시간 이라는 것을 감안하고

    00:00:00 ~ 11:59:59 까지 오전

    12:00:00 ~ 23:59:59 까지 오후



    ㅡ,.ㅡ;

    그럼 님의 쿼리문의 조건으로 한다면..



    Time1 := StrToTime('11:59:00');

    Time2 := StrToTime('12:00:00');





    Parambyname('a').astime := time1;

    Parambyname('b').astime := time2;



    아님..

    Parambyname('a').asstring:= '11:59:00';

    Parambyname('b').asstring := '12:00:00';



    만약 시간필드가 날짜와 시간이 같이 있다면(보통같이 있죠.)

    시간만 가져오게 컨버팅 시켜야 합니다.



    convert(char(8), time, 108) as re_time 이런씩으로..

    에구구.. 초보 였네여..

    도움이 되었기를 바라며~~~~~~ 휘리릭~











    이무열 wrote:

    > DB안에 시간이 저장되어있고 이것을 오전이건과 오후인건을 구분하여 검색하고 싶은데 어떻게 해야지요?

    > 먼저 오전인것을 저는

    > SQL.Add(' Select * from A ');

    > SQL.Add(' Tim >=:FrontP And ');

    > SQL.Add(' Tim <=:TOP ');

    > PrePare;

    > ParamByName('FrontP').AsTime := StrToTime('12:00 am');

    > ParamByName('TOP').AsTime := StrToTime('11:59 am');

    > open;

    > 여기서 Error메세지가 뜨네요.

    > 분명 StrToTime에서 잘못되것같은데..

    >

    > 아시는 분 불상한 양을 구원하소서..