Q&A

  • 쿼리문에 대해서 조언좀 해주세요
select * from test where status like ''%'+p+'%''

status 가 1byte 로 p,d 두가지 값을 가지고 있습니다.

그래서 p 값을 가진 필드만 조회하려고 하는데, 윗 문장은 안되네요.

그리고,

select * from test where printdate between 'edit1.text' and 'edit2.text'
이 필드 역시 8byte 문자열인데 안되구요.

' 와 " 을 어떻게 구분해서 써야 하는건가요?

부탁드립니다.

2  COMMENTS
  • Profile
    KDDG_ZZOM 2002.05.04 05:28
    우선 status란 필드에 p,d 값만 들어가나요?
    데이타베이스에서 대소문자 구분하는데... 한번 확인하세요...

    하나더... like문쓰실때 편하지만 데이타건수가 많이 있으면 인덱스를
    생각하셔야 되는데... 앞쪽에 %붙치면 인덱스 못타거든요...

    select * from test where printdate between 'edit1.text' and 'edit2.text'
    이문장은 printdate란 필드에 텍스트로 edit1.txt 부터 edit2.txt 까지 찾는 조건입니다...
    그냥 쉽게
      'select * from test where printdate between :fymd and :eymd'

    query1.parambyname('fymd').AsString := edit1.Text;
    query1.parambyname('eymd').AsString := edit2.text;
    이렇게해도 되고요... 여러가지 방법이 있을겁니다...


  • Profile
    김형수 2002.05.04 19:25
    감사합니다.
    큰 도움이 됐습니다.