database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 1490 게시물 읽기
No. 1490
다른 테이블의 갯수 세어서 insert하기
작성자
qudals
작성일
2004-08-19 06:00
조회수
2,516

 

이름 과목분류1 과목분류2
a 1 1
b 1 1
c 1 2
c 2 1
c 2 2
d 2 2
a 3 1
a 1 2
b 2 2


 

위와 같은 테이블이 있을때

n1 = (과목분류1 = 1 and 과목분류2 = 1)의 갯수

n2 = (과목분류1 = 1 and 과목 분류2 = 2)의 갯수

n3 = (과목분류1 = 2 and 과목 분류2 = 1)의 갯수

n4 = (과목분류1 = 2 and 과목 분류2 = 2)의 갯수

n5 = (과목분류1 = 3 and 과목 분류2 = 1)의 갯수

n6 = (과목분류1 = 3 and 과목 분류2 = 2)의 갯수

위의 값을 얻어서

새로운 테이블에 저장하려고 합니다.

insert into tbl_cnt values(n1, n2, n3, n4, n5, n6) 와 같이 넣으려고 합니다.

 

두 테이블은 같은 디비 안에 있을 경우에 이러한 작업을 한번의 쿼리로 가능할까요??

 

이 글에 대한 댓글이 총 1건 있습니다.

insert가 일어나는 테이블의 스키마가 어떤지는 잘 모르겠지만

모든 n1 ~ n6 까지의 insert는 될 정도라고 가정한다면

위와 같은 쿼리는 한번의 쿼리로 가능합니다.

 

먼저 제시한 테이블의 이름을 tbl_src라고 하겠습니다.

 


declare
 @n1 int
, @n2 int
, @n3 int
,  @n4 int
,  @n5 int
,  @n6 int

    select @n1 = count(*) from tbl_src where 과목분류1=1 and 과목분류2=1
    select @n2 =  count(*) from tbl_src where 과목분류1=1 and 과목분류2=2
    select @n3 = count(*) from tbl_src where 과목분류1=2 and 과목분류2=1
    select @n4 = count(*) from tbl_src where 과목분류1=2 and 과목분류2=2
    select @n5 =  count(*) from tbl_src where 과목분류1=3 and 과목분류2=1
    select @n6 =  count(*) from tbl_src where 과목분류1=3 and 과목분류2=2

insert tbl_cnt values (@n1, @n2, @n3, @n4, @n5, @n6)

 

그냥 위의 조건대로만 입력할 수 있도록 한것이니 참고하시기 바랍니다.

여리님이 2004-08-19 10:32에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1494nvarchar vs varchar [6]
김민영
2004-08-20
8151
1492ㄱ 으로 시작하는 사람이름 [1]
박무열
2004-08-19
3153
1491hostname 변경시 ms sql server 환경 변경 방법 문의..
kis
2004-08-19
2621
1490다른 테이블의 갯수 세어서 insert하기 [1]
qudals
2004-08-19
2516
1489mysql에서 mssql로 쿼리변환중 주의사항 [1]
김병용
2004-08-17
4734
1488그룹별 중에 상위 한개만 가지고 오고 싶은데요... [1]
둥이
2004-08-17
4467
1487엑셀파일을 ms sql db로 저장하기... [1]
대행수
2004-08-17
3948
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다