본문 바로가기
반응형

SQL7

mssql Go 명령어로 쿼리 나누어서 실행하는 예제 mssql Go 명령어로 쿼리 나누어서 실행하는 예제 여러개의 쿼리를 실행시 주의해야 할 사항들이다. 그중 하나의 방법이 Go문을 사용하여 쿼리를 나누어서 실행하는 방법이다. 두개 이상의 쿼리를 하나로 날리는 경우 1 select 1 2 select 2 위의 쿼리는 2개이지만 실행시 내부적으로는 하나의 쿼리를 생성하여 출력된다. 하지만 여러개의 쿼리를 수행시 create view 나 procedure 같은 문법의 경우 쿼리의 맨 앞에 시작에 와야 한다. 그래서 go문을 사용하여 나누어 실행되게 수행한다. 1 select 1 2 go 3 select 2 4 go 5 6 create view test_a as 7 select 3 as b 8 go Go문은 아주 중요하다. 쿼리를 나누어서 실행해야 하는 경우 .. 2010. 5. 13.
truncate table 로그를 남기지않고 delete하기 truncate table 로그를 남기지않고 delete하기 데이타가 아주 큰테이블을 지울때는 이런걸 사용해야 한단다 예) truncate table 테이블명 좋은 설명이 있어 퍼왔다. Truncate 문은 테이블이나 cluster로부터 모든 행(row)을 삭제하기 위해 사용된다. • drop과 동일한 테이블 삭제 명령이지만, TRUNCATE 명령은 테이블내의 모든 데이터만 삭제된다. • 기억공간과 구조 모두를 반납하는 drop과 달리 이 명령은 테이블에 사용된 기억공간(memory)은 회수되지만 테이블의 구조는 남는다. • delete 문은 rollback이 가능하지만, TRUNCATE 명령은 auto COMMIT이므로 rollback할 수 없다. • 테이블 소유자나 DELETE TABLE 권한이 있어.. 2008. 3. 6.
distict 와 group by의 차이는 무엇일까? 갈무리한것! distinct는 sorting하면서 중복되는 row를 제거하는거고 group by는 조건을 기준으로 값을 합 하지요. 처리하는 방법에 약간의 차이가 있는거 같습니다. Teradata의 경우는 group by는 4 step : 1.local aggregation 2.redistribution 3.sort 4.global aggregation 이고 distinct는 2 step : 1.redistribution 2.sort (eliminationg duplicate value) 입니다. 일반DB와 달리 병렬처리하는 과정이 있으므로 local aggregation, redistribution 이 빠진다고 해도 group by는 한 과정이 더있습니다. 그러므로 unique한 row를 구한다고 할때.. 2008. 1. 25.
반응형