데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

sql 초보 질문요

YHS 2018.12.27 23:19 Views : 713

안녕하세요. sql만이 아니라 컴퓨터하면 엑셀 워드만 조금씩 하던 사람입니다.


회사 일중에 SQL로 데이터 불러오고 하는 작업을 하게 되었는데 사수들도 잘몰라서 스스로 배워가느라 질문합니다.

일단 크게 3가지 질문이 있습니다.


먼저 첫째로,

일단 테이블 A와 B에서 특정 칼럼(column이라 하겠습니다)에 대해 공통된 내역을 우선 뽑았습니다.

select * from A

where exists ( select * from B where A.colum = B.column and ~ and ~) 뒤에는 추가 조건 2개가 더 있어서 이렇게 적어서 뽑았습니다.

사실 이렇게 적는것이 맞는지도 의문인데, 혹시 틀렷다면 알려주시면 감사하겠습니다.


두번째로는 일단 저렇게 치고나니 결과값이 나오더군요. 그런데 이제 제가 이 결과값을 이용해서 또 다른 작업을 하려고 합니다.

그럴때는 이 결과를 새로운 테이블로 저장을 해야하나요?

일단 구글링하다가 임시 테이블이란 개념도 보긴했는데 사실 잘 모르겠어서 여기서 막히고 있습니다.

지금 하고자 하는 바는 저렇게 추출된 결과값 중 특정 칼럼(column2라 하겠습니다) 에서 중복된 값을 제외하고 추출하려고 합니다.

그래서 구글링 해보니 count(distinct column2) from ~~ 꼴이 되어야 하는데 저기서 from뒤에 제가 처음 위에 쿼리를 통해서 추출한 결과를 넣고 싶다는게 지금 의도입니다. 알려주신다면 감사하겠습니다.


마지막으로는 join과 where exist의 차이가 궁금합니다.

물론 join을 하면 불러오는 테이블의 칼럼들도 뒤이어 좌르륵 붙기때문에 결과가 다른건 알고있습니다.

그런데 예를 들어 첫번째 질문의 상황에서

select * from A

join B on A.column = B.column where ~ and ~ 이렇게 치면 특정칼럼에서 공통된 내역만을 불러온다는 것은 같지 않나요?

제가 2가지 쿼리를 모두 돌려보니 추출되는 공통내역도 달라서 행의 수도 다르게 나오더군요.

혹시 이렇게 결과가 달리 나오는 이유를 알려주신다면 감사하겠습니다.



No. Subject Author Date Views
10412 저장 프로시저에서 sp_executesql 관련 문의 드립니다. [1] 로티보이 2019.01.03 673
10411 프로시저 내 세미콜론 관련 문의 드립니다. [3] 김삐씨 2019.01.03 819
10410 OLEDB 연결문제 문의드립니다. [2] 나방 2019.01.02 644
10409 쿼리 질문좀 드리겠습니다. [1] 마이스타 2018.12.30 571
10408 컬럼값 비교 삽입 [5] 배움자세 2018.12.29 627
10407 union 뭐가 문제인지요..? [1] 슈토파이터 2018.12.28 800
10406 특정 컬럼에 특수문자가 들어간거만 찾는 방법이 있을까요? [1] neiyan 2018.12.28 595
» sql 초보 질문요 [1] YHS 2018.12.27 713
10404 mssql 행이 null이면 다음 값 조회 [2] 전람회 2018.12.27 824
10403 두가지 질문을 드립니다... [3] 슈토파이터 2018.12.26 696
10402 WHILE 문 관련질문.. [1] 후알유? 2018.12.24 537
10401 전체백업할 때 데이터 중복저장 되는 문제 [1] 팔개 2018.12.21 624
10400 CSV 파일 Import 시 콤마까지 포함시키는 방법 문의 [1] Seo 2018.12.21 852
10399 데이터베이스 메일 발송 문제. [1] 신가이 2018.12.20 1275
10398 ora-02299 에러 질문드립니다.. [1] 시닙개발자 2018.12.20 706
10397 (세로 컬럼 - 가로 컬럼) SELECT 문) 질문 [2] 배움자세 2018.12.19 695
10396 인덱스열에 여러개넣는것과 1개씩 여러인덱스로나누는게 서로 다른가요 [2] freighter 2018.12.19 693
10395 sql 2017 문의 드립니다. [3] 죠리퐁 2018.12.18 557
10394 Ansi JOIN 과 TSQL JOIN차이가 뭔가요? [1] 초코렛뜨 2018.12.18 780
10393 이중루프쿼리문 수정문의 [1] 초코렛뜨 2018.12.18 607





XE Login