Q&A

  • SQL Select문에 대한 궁금증...
select a.gt_stcode + ' _ ' + b.Ag_Name dename,

a.gt_stcode + ' - ' + c.st_name chname,

a.gt_gdcode1 + ' - ' + d.gd_name item1,

a.gt_gdcode2 + ' - ' + d.gd_name item2,

a.gt_gdcode3 + ' - ' + d.gd_name item3,

a.gt_gdcode4 + ' - ' + d.gd_name item4,

a.gt_gdcode5 + ' - ' + d.gd_name item5,

a.gt_cscode + ' - ' + e.cs_korname customname

from gather a, agent b, site c, goods d, custom e



테이블이 5개가 들어 가야 되고여..



한 테이블에서 나머지 네개의 테이블에서 데이타를



불러와서 '코드 - 이름' 이러식으로 출력이 나오길 원합니다..



얼마 안되는 실력으로 해결을 할려고 하니 상당히 힘들군여...



고수님들의 많은 답변 기다립니다...



근데 상당히 급하니 빨리좀 써주세여...^^



즐코하세여..

5  COMMENTS
  • Profile
    김광섭 2001.03.16 04:03
    우선 해당 dbms가 ms-sql인지 oracle 인지 알면 좋겠구요.

    각테이블 구조가 어떤지 알려줘야 하구요.(복잡하면 키하구 Selct 해야될 몇개필드만)

    그리고 구현하구 싶은 내용.

    이렇게 세가지는 기본적으로 알어야 SQL문을 작성하죠 ^^;;

    님이 SQL문에 변수를 넣을 수 있냐는 것인데 넣을 수 있구요.

    방법은 직접하거나 파라미터로 ...두가지있습니다.(이걸 말씀하신건지 모르겠네요)



    답변한 님 말씀은 해당 코드만 있다면 계산필드를 추가해서 조건만 맞추어주면 보여주고 싶은 다른 테이블의 필드를 보여주것이 복잡한 SQL문을 구사하는 것보다 더 간편하다는 것입니다.

  • Profile
    혀노 2001.03.16 01:32
    두가지 방법이 있을것 같군여...

    한가지는 쿼리 컴포넌트의 계산된필드를 사용하는방법....

    아예...쿼리에서 가져오는방법...

    테이블이 많아서...쿼리로 하는것보다 계산된 필드를 사용해서 코드에

    대한 이름을 가져오는것도 괜찬을듯....



    쿼리에서 가져오려면 where 조건절을 잘 적어 주셔야 하는데...

    한 테이블에는 코드가...나머지 테이블에서 이름을 가져오려는것

    같군여...아닌가여?

    그럼 코드가 프라이머리키에...외부키로 되어 있을테니...

    where 절에 그걸 적어야겠군여...



    그럼 이만....





    송길수 wrote:

    > select a.gt_stcode + ' _ ' + b.Ag_Name dename,

    > a.gt_stcode + ' - ' + c.st_name chname,

    > a.gt_gdcode1 + ' - ' + d.gd_name item1,

    > a.gt_gdcode2 + ' - ' + d.gd_name item2,

    > a.gt_gdcode3 + ' - ' + d.gd_name item3,

    > a.gt_gdcode4 + ' - ' + d.gd_name item4,

    > a.gt_gdcode5 + ' - ' + d.gd_name item5,

    > a.gt_cscode + ' - ' + e.cs_korname customname

    > from gather a, agent b, site c, goods d, custom e

    >

    > 테이블이 5개가 들어 가야 되고여..

    >

    > 한 테이블에서 나머지 네개의 테이블에서 데이타를

    >

    > 불러와서 '코드 - 이름' 이러식으로 출력이 나오길 원합니다..

    >

    > 얼마 안되는 실력으로 해결을 할려고 하니 상당히 힘들군여...

    >

    > 고수님들의 많은 답변 기다립니다...

    >

    > 근데 상당히 급하니 빨리좀 써주세여...^^

    >

    > 즐코하세여..

  • Profile
    송길수 2001.03.16 01:44
    저 정말 제송한 말이지만...



    더 자세히 갈켜주면 안될까여...??



    글구 Where 조건을 줄려구 해두...



    다덜 다른 내용이기 때문에 다 같이 주면...



    데이타가 하나두 안올라 오던데여..



    조금더 자세히 부탁드립니다..



    그리구 데이타에 내용을 짤라서 조건 비교를 해야 하는데...



    고건 또 어떻게 해야 될지...??



    부탁드립니다...ㅡ.ㅡ (--)(__)(--)



    즐코하세여..^^



    혀노 wrote:

    > 두가지 방법이 있을것 같군여...

    > 한가지는 쿼리 컴포넌트의 계산된필드를 사용하는방법....

    > 아예...쿼리에서 가져오는방법...

    > 테이블이 많아서...쿼리로 하는것보다 계산된 필드를 사용해서 코드에

    > 대한 이름을 가져오는것도 괜찬을듯....

    >

    > 쿼리에서 가져오려면 where 조건절을 잘 적어 주셔야 하는데...

    > 한 테이블에는 코드가...나머지 테이블에서 이름을 가져오려는것

    > 같군여...아닌가여?

    > 그럼 코드가 프라이머리키에...외부키로 되어 있을테니...

    > where 절에 그걸 적어야겠군여...

    >

    > 그럼 이만....

    >

    >

    > 송길수 wrote:

    > > select a.gt_stcode + ' _ ' + b.Ag_Name dename,

    > > a.gt_stcode + ' - ' + c.st_name chname,

    > > a.gt_gdcode1 + ' - ' + d.gd_name item1,

    > > a.gt_gdcode2 + ' - ' + d.gd_name item2,

    > > a.gt_gdcode3 + ' - ' + d.gd_name item3,

    > > a.gt_gdcode4 + ' - ' + d.gd_name item4,

    > > a.gt_gdcode5 + ' - ' + d.gd_name item5,

    > > a.gt_cscode + ' - ' + e.cs_korname customname

    > > from gather a, agent b, site c, goods d, custom e

    > >

    > > 테이블이 5개가 들어 가야 되고여..

    > >

    > > 한 테이블에서 나머지 네개의 테이블에서 데이타를

    > >

    > > 불러와서 '코드 - 이름' 이러식으로 출력이 나오길 원합니다..

    > >

    > > 얼마 안되는 실력으로 해결을 할려고 하니 상당히 힘들군여...

    > >

    > > 고수님들의 많은 답변 기다립니다...

    > >

    > > 근데 상당히 급하니 빨리좀 써주세여...^^

    > >

    > > 즐코하세여..

  • Profile
    혀노 2001.03.16 01:48
    허허...--;;



    select a.code1, b.name,

    a.code2, c.name,

    a.code3, d.name,

    a.code4, e.name

    from gather a, agent b, site c, goods d, custom e

    where a.code1 = b.code

    and a.code2 = c.code

    and a.code3 = d.code

    and a.code4 = e.code



    이런식으로 하는건데여...제가 보기엔...이것보단...

    각 테이블들이 어떤식으로 관계되어 있는지 잘은 모르지만여...

    걍...계산된 필드로 하시는게 좋을듯...생각되는군여...



    select a.*

    from gather a



    a 테이블꺼만 가져오고...

    나머지 gather 테이블에 코드에 대한 외부키를 가진 각기 다른 테이블에서

    그 코드에 대한 이름을 계산된 필드를 사용해서 가져오시는게 좋을듯 싶군여...







    송길수 wrote:

    > 저 정말 제송한 말이지만...

    >

    > 더 자세히 갈켜주면 안될까여...??

    >

    > 글구 Where 조건을 줄려구 해두...

    >

    > 다덜 다른 내용이기 때문에 다 같이 주면...

    >

    > 데이타가 하나두 안올라 오던데여..

    >

    > 조금더 자세히 부탁드립니다..

    >

    > 즐코하세여..^^

    >

    > 혀노 wrote:

    > > 두가지 방법이 있을것 같군여...

    > > 한가지는 쿼리 컴포넌트의 계산된필드를 사용하는방법....

    > > 아예...쿼리에서 가져오는방법...

    > > 테이블이 많아서...쿼리로 하는것보다 계산된 필드를 사용해서 코드에

    > > 대한 이름을 가져오는것도 괜찬을듯....

    > >

    > > 쿼리에서 가져오려면 where 조건절을 잘 적어 주셔야 하는데...

    > > 한 테이블에는 코드가...나머지 테이블에서 이름을 가져오려는것

    > > 같군여...아닌가여?

    > > 그럼 코드가 프라이머리키에...외부키로 되어 있을테니...

    > > where 절에 그걸 적어야겠군여...

    > >

    > > 그럼 이만....

    > >

    > >

    > > 송길수 wrote:

    > > > select a.gt_stcode + ' _ ' + b.Ag_Name dename,

    > > > a.gt_stcode + ' - ' + c.st_name chname,

    > > > a.gt_gdcode1 + ' - ' + d.gd_name item1,

    > > > a.gt_gdcode2 + ' - ' + d.gd_name item2,

    > > > a.gt_gdcode3 + ' - ' + d.gd_name item3,

    > > > a.gt_gdcode4 + ' - ' + d.gd_name item4,

    > > > a.gt_gdcode5 + ' - ' + d.gd_name item5,

    > > > a.gt_cscode + ' - ' + e.cs_korname customname

    > > > from gather a, agent b, site c, goods d, custom e

    > > >

    > > > 테이블이 5개가 들어 가야 되고여..

    > > >

    > > > 한 테이블에서 나머지 네개의 테이블에서 데이타를

    > > >

    > > > 불러와서 '코드 - 이름' 이러식으로 출력이 나오길 원합니다..

    > > >

    > > > 얼마 안되는 실력으로 해결을 할려고 하니 상당히 힘들군여...

    > > >

    > > > 고수님들의 많은 답변 기다립니다...

    > > >

    > > > 근데 상당히 급하니 빨리좀 써주세여...^^

    > > >

    > > > 즐코하세여..

  • Profile
    송길수 2001.03.16 01:59
    전혀 그렇게 해봐도 안되는데여..



    데이타는 올라올 생각을 안하고 있는데...



    우찌해야 할지...??



    select a.gt_stcode + ' _ ' + b.Ag_Name dename,

    a.gt_stcode + ' - ' + c.st_name chname,

    a.gt_gdcode1 + ' - ' + d.gd_name item1,

    a.gt_gdcode2 + ' - ' + e.gd_name item2,

    a.gt_gdcode3 + ' - ' + f.gd_name item3,

    a.gt_gdcode4 + ' - ' + g.gd_name item4,

    a.gt_gdcode5 + ' - ' + h.gd_name item5,

    a.gt_cscode + ' - ' + j.cs_korname customname

    from gather a

    left outer join agent b

    on(b.ag_code = a.gt_stcode)

    left outer join site c

    on(c.st_code = a.gt_stcode)

    left outer join goods d

    on(d.gd_code = a.gt_gdcode1)

    left outer join goods e

    on(e.gd_code = a.gt_gdcode2)

    left outer join goods f

    on(f.gd_code = a.gt_gdcode3)

    left outer join goods g

    on(g.gd_code = a.gt_gdcode4)

    left outer join goods h

    on(h.gd_code = a.gt_gdcode5)

    left outer join custom j

    on(j.cs_code = a.gt_cscode)

    where a.gt_stcode = '11310085'



    위와 같은 식으로 하면 올라 오긴 하는데...



    중요한건 조인 문안에 변수를 넣을수 있나여...???



    아님 데이타를 짜르는 방법이라두....



    한번더 부탁드립니다..



    즐코하세여...



    ^^



    혀노 wrote:

    > 허허...--;;

    >

    > select a.code1, b.name,

    > a.code2, c.name,

    > a.code3, d.name,

    > a.code4, e.name

    > from gather a, agent b, site c, goods d, custom e

    > where a.code1 = b.code

    > and a.code2 = c.code

    > and a.code3 = d.code

    > and a.code4 = e.code

    >

    > 이런식으로 하는건데여...제가 보기엔...이것보단...

    > 각 테이블들이 어떤식으로 관계되어 있는지 잘은 모르지만여...

    > 걍...계산된 필드로 하시는게 좋을듯...생각되는군여...

    >

    > select a.*

    > from gather a

    >

    > a 테이블꺼만 가져오고...

    > 나머지 gather 테이블에 코드에 대한 외부키를 가진 각기 다른 테이블에서

    > 그 코드에 대한 이름을 계산된 필드를 사용해서 가져오시는게 좋을듯 싶군여...

    >

    >

    >

    > 송길수 wrote:

    > > 저 정말 제송한 말이지만...

    > >

    > > 더 자세히 갈켜주면 안될까여...??

    > >

    > > 글구 Where 조건을 줄려구 해두...

    > >

    > > 다덜 다른 내용이기 때문에 다 같이 주면...

    > >

    > > 데이타가 하나두 안올라 오던데여..

    > >

    > > 조금더 자세히 부탁드립니다..

    > >

    > > 즐코하세여..^^

    > >

    > > 혀노 wrote:

    > > > 두가지 방법이 있을것 같군여...

    > > > 한가지는 쿼리 컴포넌트의 계산된필드를 사용하는방법....

    > > > 아예...쿼리에서 가져오는방법...

    > > > 테이블이 많아서...쿼리로 하는것보다 계산된 필드를 사용해서 코드에

    > > > 대한 이름을 가져오는것도 괜찬을듯....

    > > >

    > > > 쿼리에서 가져오려면 where 조건절을 잘 적어 주셔야 하는데...

    > > > 한 테이블에는 코드가...나머지 테이블에서 이름을 가져오려는것

    > > > 같군여...아닌가여?

    > > > 그럼 코드가 프라이머리키에...외부키로 되어 있을테니...

    > > > where 절에 그걸 적어야겠군여...

    > > >

    > > > 그럼 이만....

    > > >

    > > >

    > > > 송길수 wrote:

    > > > > select a.gt_stcode + ' _ ' + b.Ag_Name dename,

    > > > > a.gt_stcode + ' - ' + c.st_name chname,

    > > > > a.gt_gdcode1 + ' - ' + d.gd_name item1,

    > > > > a.gt_gdcode2 + ' - ' + d.gd_name item2,

    > > > > a.gt_gdcode3 + ' - ' + d.gd_name item3,

    > > > > a.gt_gdcode4 + ' - ' + d.gd_name item4,

    > > > > a.gt_gdcode5 + ' - ' + d.gd_name item5,

    > > > > a.gt_cscode + ' - ' + e.cs_korname customname

    > > > > from gather a, agent b, site c, goods d, custom e

    > > > >

    > > > > 테이블이 5개가 들어 가야 되고여..

    > > > >

    > > > > 한 테이블에서 나머지 네개의 테이블에서 데이타를

    > > > >

    > > > > 불러와서 '코드 - 이름' 이러식으로 출력이 나오길 원합니다..

    > > > >

    > > > > 얼마 안되는 실력으로 해결을 할려고 하니 상당히 힘들군여...

    > > > >

    > > > > 고수님들의 많은 답변 기다립니다...

    > > > >

    > > > > 근데 상당히 급하니 빨리좀 써주세여...^^

    > > > >

    > > > > 즐코하세여..