Q&A

  • 두개의 테이블을 join했을때 쿼리문 결과를 어떻게 가져오나요?
안녕하세요
제가 두개의 테이블을 조인해서 결과를 얻고 싶습니다.
<!--CodeS-->
Query1.SQL.Clear;
Query1.SQL.Add('select com_tbl.com_isbn from com_tbl,p_est
          where p_est.est_dat = :new_date and p_est.est_seq := com_tbl.est_seq');
Query1.ParamByName('new_date').AsString:=
          edt_seq_year.Text + '/' + month + '/' + date;
Query1.Open;
edt_input_isbn.Text := Query1.FieldValues['com_tbl.com_isbn'];
<!--CodeE-->
위와 같이 하려고 합니다.
실행결과 'Query1:Field'='is of an unknown type'. 이런 에러메시지가 발생합니다.
Query1.FieldValues['com_tbl.com_isbn'];
Query1.FieldValues['com_isbn']; 이렇게 두가지 방법으로 해봤는데 같은 에러가 발생합니다. 그래서 조인한 쿼리 결과를 가져오는게 문제가 있는지 알아보기 위해 아래와 같이 수정해 수행결과 정상적인 결과를 얻을수 있었습니다. 위 코드의 문제점은 무엇인지 알려주세요.
<!--CodeS-->
Query1.SQL.Clear;
Query1.SQL.Add('select s_id from p_est where est_dat = :new_date');
Query1.ParamByName('new_date').AsString:=
          edt_seq_year.Text + '/' + month + '/' + date;
Query1.Open;
edt_input_isbn.Text := Query1.FieldValues['s_id'];
<!--CodeE-->
1  COMMENTS
  • Profile
    모영철 2005.03.24 20:51
    제가 보기에는 그것이 문제가 아니라

    p_est.est_seq := com_tbl.est_seq

    이것이 문제 아닌가요?

    p_est.est_seq = :com_tbl.est_seq

    이것이 아닐까 싶은데요..