Q&A

  • sql에서 null 값을 선택할 수 있는 방법?
SELECT A.FILENO, B.ITEM, A.DESIGN,B.UNIT,A.COLORNO,A.GSUSER, C.USNAME, D.COLORNAME,D.COLORQTY, A.BULCODE, SUM(TQTY) TQTY, E.BULDES FROM BARMST A, ORDFILE B , USERCODE C , ORDCOLOR D , BULCODE E WHERE A.GSDATE = '29-Apr-2000' AND A.GSGUBUN = '01' AND A.GSUSER = C.USCODE AND A.FILENO = D.FILENO AND A.DESIGN = D.DESIGN AND A.COLORNO = D.COLORNO AND A.BULCODE = E.BULCODE AND A.FILENO = B.FILENO GROUP BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES ORDER BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES



위와 같이 sql을 작성하였읍니다...

문제는 A.DESIGN = D.DESIGN 에서가 문제 입니다...

문제는 두개의 테이블의 Design 필드에 값이 있으면 조인이 되어 선택되어 지는데

값이 아예 null이 선택이 되어지지 않는군요...



그래서 간단히 다음과 같이 테스트 삼아 sql를 만들어 보았도 되지 않는군요...

select * from BARMST where FILENO = '019120A01' and Design = null ;

select * from BARMST where FILENO = '019120A01' and Design = '' ;



DB는 오라클이고요.....

아시는 분은 도움좀 주세요....



3  COMMENTS
  • Profile
    박종일 2000.05.02 21:50
    하늘맥 wrote:

    > SELECT A.FILENO, B.ITEM, A.DESIGN,B.UNIT,A.COLORNO,A.GSUSER, C.USNAME, D.COLORNAME,D.COLORQTY, A.BULCODE, SUM(TQTY) TQTY, E.BULDES FROM BARMST A, ORDFILE B , USERCODE C , ORDCOLOR D , BULCODE E WHERE A.GSDATE = '29-Apr-2000' AND A.GSGUBUN = '01' AND A.GSUSER = C.USCODE AND A.FILENO = D.FILENO AND A.DESIGN = D.DESIGN AND A.COLORNO = D.COLORNO AND A.BULCODE = E.BULCODE AND A.FILENO = B.FILENO GROUP BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES ORDER BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES

    >

    > 위와 같이 sql을 작성하였읍니다...

    > 문제는 A.DESIGN = D.DESIGN 에서가 문제 입니다...

    > 문제는 두개의 테이블의 Design 필드에 값이 있으면 조인이 되어 선택되어 지는데

    > 값이 아예 null이 선택이 되어지지 않는군요...

    >

    > 그래서 간단히 다음과 같이 테스트 삼아 sql를 만들어 보았도 되지 않는군요...

    > select * from BARMST where FILENO = '019120A01' and Design = null ;

    > select * from BARMST where FILENO = '019120A01' and Design = '' ;

    >

    > DB는 오라클이고요.....

    > 아시는 분은 도움좀 주세요....

    >



    null 값의 checking은 =, <> 연산자가 아니고 is null, in not null 로 하는 것입니다.

    그리고 null 값은 space 도 아닌 값 자체가 없다는 뜻이며 위 내용을 보니 query에서

    join 시에 null value 도 조인하려는 경우 같은데 이럴때는 outer join을 사용해야 합니다. 결국 null value 을 가진 테이블에 (+) 연산자를 주어야 합니다. 예를 들어 테이블 a 의 a column 값과 b테이블의 b column을 조인하려고 하고 b column에 null 값이 있다면 조인시에

    where a.a = b.b(+) 하시면 되지 않을까....

  • Profile
    박종일 2000.05.02 21:50
    하늘맥 wrote:

    > SELECT A.FILENO, B.ITEM, A.DESIGN,B.UNIT,A.COLORNO,A.GSUSER, C.USNAME, D.COLORNAME,D.COLORQTY, A.BULCODE, SUM(TQTY) TQTY, E.BULDES FROM BARMST A, ORDFILE B , USERCODE C , ORDCOLOR D , BULCODE E WHERE A.GSDATE = '29-Apr-2000' AND A.GSGUBUN = '01' AND A.GSUSER = C.USCODE AND A.FILENO = D.FILENO AND A.DESIGN = D.DESIGN AND A.COLORNO = D.COLORNO AND A.BULCODE = E.BULCODE AND A.FILENO = B.FILENO GROUP BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES ORDER BY A.FILENO, B.ITEM, A.DESIGN,A.COLORNO,D.COLORNAME,A.GSUSER,C.USNAME,B.UNIT,D.COLORQTY,A.BULCODE,E.BULDES

    >

    > 위와 같이 sql을 작성하였읍니다...

    > 문제는 A.DESIGN = D.DESIGN 에서가 문제 입니다...

    > 문제는 두개의 테이블의 Design 필드에 값이 있으면 조인이 되어 선택되어 지는데

    > 값이 아예 null이 선택이 되어지지 않는군요...

    >

    > 그래서 간단히 다음과 같이 테스트 삼아 sql를 만들어 보았도 되지 않는군요...

    > select * from BARMST where FILENO = '019120A01' and Design = null ;

    > select * from BARMST where FILENO = '019120A01' and Design = '' ;

    >

    > DB는 오라클이고요.....

    > 아시는 분은 도움좀 주세요....

    >



    null 값의 checking은 =, <> 연산자가 아니고 is null, in not null 로 하는 것입니다.

    그리고 null 값은 space 도 아닌 값 자체가 없다는 뜻이며 위 내용을 보니 query에서

    join 시에 null value 도 조인하려는 경우 같은데 이럴때는 outer join을 사용해야 합니다. 결국 null value 을 가진 테이블에 (+) 연산자를 주어야 합니다. 예를 들어 테이블 a 의 a column 값과 b테이블의 b column을 조인하려고 하고 b column에 null 값이 있다면 조인시에

    where a.a = b.b(+) 하시면 되지 않을까....

  • Profile
    하늘맥 2000.05.02 23:23
    답변고맙습니다..

    a 와 b 두군데다 null 값이 있으면 어떡하죠..





    박종일 wrote:



    > null 값의 checking은 =, <> 연산자가 아니고 is null, in not null 로 하는 것입니다.

    > 그리고 null 값은 space 도 아닌 값 자체가 없다는 뜻이며 위 내용을 보니 query에서

    > join 시에 null value 도 조인하려는 경우 같은데 이럴때는 outer join을 사용해야 합니다. 결국 null value 을 가진 테이블에 (+) 연산자를 주어야 합니다. 예를 들어 테이블 a 의 a column 값과 b테이블의 b column을 조인하려고 하고 b column에 null 값이 있다면 조인시에

    > where a.a = b.b(+) 하시면 되지 않을까....

    • 이정욱
      2000.05.03 01:55
      Application.ShowMainForm := False; 흐.. 생각보다는 모르시는 분들이 많은 팁입니다~ 초심자 ...
    • 박용
    • 2000.05.03 01:46
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 정병근
      2000.05.03 01:57
      박용 wrote: > > 안녕하세요. > 델파이를 공부하는 학생입니다.(왕초보) > Q&A에서 아무리 ...
    • nilriri
      2000.05.03 01:56
      var qry_sum : TQuery; begin qry_sum := TQuery.create(nil); with qry_sum do begin D...
    • 준희
    • 2000.05.03 01:20
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.05.03 02:49
      안녕하세요. 최용일입니다. ShowModal로 띄운 폼의 Ok버트을 눌렸는데 종료가 된다는 말씀이죠. 아마도 ...
    • 준희
      2000.05.03 05:02
      안녕하십니까. 이문제는 해결되었습니다. Project Option에서 Call 되는 Form을 Availible...에 넣...
    • zoro
      2000.05.03 01:43
      안녕하셔요 괜히 하수가 답변하게 되어 고수님의 자세한 답변을 못들을 것 같아 죄송합니다... 어찌
    • 조규춘
      2000.05.03 01:50
      준희 wrote: > 안녕하세요 > 델코초보인데요.. > > DB에 Insert/Edit하는 Form을 만들려고 하는데 문...
    • 김태균
      2000.05.03 01:36
      Try ... finally 대신에 Try ... except 문을 쓰세요.
    • 정수현
    • 2000.05.03 00:43
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김일영
      2000.05.03 01:45
      올려주신 내용만으로는 SQL문 어디에도 buy_code라는 필드를 select해 오지 않는군요. 그러므로 비교를 할...
    • 조규춘
      2000.05.03 01:18
      델초보 wrote: > 패널 콤포넌트에다가 색깔을 파랑으로 지정하고 > 그 위에다가 스피드 버튼을 놓으니 ...
    • 황원석
    • 2000.05.03 00:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김태균
      2000.05.03 01:34
      음... SQL Server에서도 한글은 2바이트로 인식합니다. 황원석 wrote: > sql 서버에서 한글을 1자리로...
    • 델_맹
    • 2000.05.03 00:34
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 윤석천
      2000.05.03 02:42
      델_맹 wrote: > > 안녕하세요, 여러분들 또 질문을 올립니다. > > *인터베이스로 데이터베이스를 연...
    • 델_맹
      2000.05.03 07:45
      윤석천 wrote: > 델_맹 wrote: > > > > 안녕하세요, 여러분들 또 질문을 올립니다. > > > > *인터...
    • 정형모
    • 2000.05.02 23:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.05.03 01:24
      정형모 wrote: > DBGrid의 내용을 그래프로 보여줄수 있는 방법을 > 아시는 분 부탁드립니다. 질문을...
    • 각시탈
    • 2000.05.02 23:35
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.05.03 01:42
      각시탈 wrote: > 안녕하십니까.. > 프로젝트를 진행하다 > ..한군데 막히는 부분이 생겨서 > 이렇게 글...
    • KJB
    • 2000.05.02 23:33
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 하늘맥
    • 2000.05.02 23:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 델피언
      2000.05.03 00:14
      하늘맥 wrote: > 별다른것은 아니고 다음과 같은 sql 이 있슴다.. > > select a.fileno,a.qty,b.colorn...
    • 2000.05.02 23:31
    • 3 COMMENTS
    • /
    • 0 LIKES
    • zoro
      2000.05.03 01:17
      //이렇게 동적으로 생성하면 되고요~~ procedure TForm1.FormCreate(Sender: TObject); begin TabCont...
    • 최용일
      2000.05.03 01:11
      안녕하세요. 최용일입니다. // 탭 추가 TabControl1.Tabs.Add('탭이름'); // 지정된 위치에 탭 추...
    • 2000.05.04 03:30
      최용일 wrote: > 안녕하세요. 최용일입니다. > > // 탭 추가 > TabControl1.Tabs.Add('탭이름'); >...
    • Macgyver
    • 2000.05.02 23:07
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 공성환
      2000.05.03 02:38
      Macgyver wrote: > 카데시안 Join이 뭐예요? > Sql Server에도 적용되나여? > 알고싶어요 답변이 될...
    • zoro
    • 2000.05.02 22:12
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김명술
    • 2000.05.02 21:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • HART
      2000.05.03 01:13
      일단 퀵리포트로 출력이 가능합니다. 단 추가 소스를 작성해야합니다. 방법은 아래 소스와 같음.. p...
    • 최은창
      2000.05.02 22:04
      절사가 버림을 뜻하는 거지요? procedure TForm1.Button1Click(Sender: TObject); var f: real; b...
    • 강민주
      2000.05.02 21:45
      박설화 wrote: > label에서 계산된 값이 실수값인데 그 값을 (10원 미만 절사)를 해야 합니다. > 어떻게 ...
    • 하늘맥
    • 2000.05.02 20:57
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 박종일
      2000.05.02 21:50
      하늘맥 wrote: > SELECT A.FILENO, B.ITEM, A.DESIGN,B.UNIT,A.COLORNO,A.GSUSER, C.USNAME, D.COLORNAME,...
    • 박종일
      2000.05.02 21:50
      하늘맥 wrote: > SELECT A.FILENO, B.ITEM, A.DESIGN,B.UNIT,A.COLORNO,A.GSUSER, C.USNAME, D.COLORNAME,...
    • 하늘맥
      2000.05.02 23:23
      답변고맙습니다.. a 와 b 두군데다 null 값이 있으면 어떡하죠.. 박종일 wrote: > null 값의 che...