안녕하세요 수고 많습니다.
Delphi 4.0, Ms-SQL 7.0을 사용하고 있습니다.
join에서 조건을 추가를 하고 싶습니다.
아무리 노력을 해도 잘 되지 않습니다.
아래는 제가 작성한 Left Join입니다.
많은 답변을 부탁 드립니다.
with QFacOrder8 do
begin
Close;
Sql.Clear;
Sql.Add('Select a.*, b.Color_MinColor Color, b.Color_Best best ');
Sql.Add('From Matr_Code a ');
Sql.Add(' Left Outer Join Matr_Color b On a.Matr_Code = ');
Sql.Add(' b.Matr_Code ');
//Sql.Add('Where a.Matr_worker =:p1 ');
Matr_Worker:담당자 즉 아이템을 입력을 시킨 담당자 입니다.
담당자 가 입력 시킨 아이템을 가지고 해당 되는 데이타를 가지고 오고
싶어요. (Left Join을 쓰는 이유: a 테이블 하나의 아이템은 b 테이블에
50개 이상 테이타 생성을 합니다. 50개 테이타를 가지고와서
50개 데이타을 이용하여 좋은데 사용해야 하기 때문에 그렇습니다.)
꼭 Left Join을 사용을 하여야 하지만 차선책 으로 좋은 방법이 있으며
답변을 주시면 감사 하겠습니다.
Sql.Add('Order By a.Matr_Code, a.Matr_Size ');
//ParamByName('p1').asstring:=FlatComboBox4.Text;
Open; i1:=0;
kg1.ZapGrid(1,0,RecordCount + 2 );
while not eof do
begin
i1:=i1+1;
SCells[0, i1]:=FieldByNAme('Matr_Code' ).asstring;
SCells[1, i1]:=FieldByNAme('Matr_Name' ).asstring;
SCells[2, i1]:=FieldByNAme('Matr_Size' ).asstring;
SCells[3, i1]:=FieldByNAme('Color' ).asstring;
Next;
end;
Close;
end;
감사 합니다.
그럼 수고 하세요