반응형
블로그 이미지
취미생활 추천받아여~       게임이든, 여가생활이든 :D

카테고리

분류 전체보기 (615)
☆잡동사니 (501)
☆코딩개발 (76)
☆영어공부 (38)
★★★★★★ (0)
Total
Today
Yesterday


반응형

SELECT 'drop procedure ' +

case when schema_id='5' then 'AM.'

when schema_id='10' then 'HR.' end + name

, * from sys.objects where schema_id in ('5', '10') and type='P'

 

이렇게 하면 프로시저를 스키마로 구분하게 됩니다. 

 

 

 

 

이렇게 결과가 나오게 됩니다. 쿼리문이 한컬럼에 자체적으로 만들어진걸 확인하실 수 있습니다. 이 만들어진 쿼리를 사용해서 진행하시면 되겠습니다. 입력 쿼리 창에 똑같이 카피앤페이스트 하시면 되겠습니다.

 

 

SELECT 'drop function ' +

case when schema_id='5' then 'AM.'

when schema_id='10' then 'HR.' end + name

, * from sys.objects where schema_id in ('5','10') and type='FN'

 

 

이거 쿼리는 함수를 스키마로 구분 해서 셀렉트 하는 구문입니다. 실행 하게 되면 다음과 같이 나오게 되겠습니다.

drop function HR.fnSalary

drop function HR.fnTABase

drop function HR.fnTransfer

....

 

쭉쭉 나오게 되는데, 이 쿼리를 사용해서 쿼리 입력창에 똑같이 카피앤테이스트하고 실행하면 간편하게 프로시저를 삭제하실 수 있겠습니다.

 

 

SELECT 'drop table ' +

case when schema_id = 5 then 'AM.'

      when schema_id = 10 then 'HR.'

      else '' end + name, * from sys.objects where type = 'U' and schema_id in (5,10)

 

이 쿼리는 사용자가 만든 테이블을 스키마 단위로 구분해서 셀렉트 하는 방식입니다. 똑같이 쿼리창에 실행하면 다음과 같이 결과값이 나옵니다.

drop table AM.BIZTYPESUB

drop table HR.RETIRECALC

drop table HR.LEND

....

 

 

이렇게 나온 쿼리문을 사용해서 쿼리 입력창에 실행하면 되겠습니다. 이런 작업들을 알고 있으면 좀 더 작업하는데 소요되는 시간을 줄일 수 있겠죠^^? 참고하셔서 많은 분들이 시간을 절약하시길 바랍니다. 이상입니다. 감사합니다.

반응형
Posted by 과라나
, |


반응형

이클립스의 에디터에서 java 언어에 대한 탭 크기를 수정하는 방법은 다음과 같다.

 

* Eclipse 의 Window -> Preferences 메뉴를 클릭하여서 Preference 대화상자를 표시한다.

* Java -> Code Style -> Formatter 를 선택한다.

 

 

 

* Eclipse built-in 은 수정할 수 없으므로 "New..." 버튼을 클릭하여서 새로운 Formatter 를 추가한다.

* "Edit..." 버튼을 클릭하면 아래의 그림과 같은 Profile 수정 대화 상자가 보여진다.

 

 

 

* Tab size 를 2 로 수정하면 java editor 의 탭 크기가 2 로 수정된 것을 확인할 수 있다.

반응형
Posted by 과라나
, |


반응형

보통 업데이트 사용할 때는

UPDATE

SET

WHERE

 

문법이 가장 기초적일 것입니다.

 

하지만, 다른 응용 방법이면서 획기적인 방법이 있다는거 아십니까? 정말 좋은 방법입니다. 그 내용을 공유할까 합니다.

UPDATE

SET

FROM

WHERE 도 가능하다는것! 입니다.

 

 

이게 무슨말이냐면요.

 

위에 데이터 값을 가지고 테스트 해볼 것입니다.

 

용)급료와임금 이라는 레코드의 D_AMT1값의 0.1% 값을

용)퇴직급여 라는 레코드의 D_AMT1에 넣고 싶다는 가정.

 

--분기별에서 판)퇴직급여 = 판)급료와임금 * 0.1

UPDATE #TMP_T

SET D_AMT_Q1 = ROUND(A.D_AMT_Q1*0.1, 0, 1)

, D_AMT_Q2 = ROUND(A.D_AMT_Q2*0.1, 0, 1)

, D_AMT_Q3 = ROUND(A.D_AMT_Q3*0.1, 0, 1)

, D_AMT_Q4 = ROUND(A.D_AMT_Q4*0.1, 0, 1)

, D_AMT_H1 = ROUND(A.D_AMT_H1*0.1, 0, 1)

, D_AMT_H2 = ROUND(A.D_AMT_H2*0.1, 0, 1)

, D_AMT_TOT = ROUND(A.D_AMT_TOT*0.1, 0, 1)

FROM ( SELECT * FROM #TMP_T WHERE ACCOUNTCD='61102000') A, #TMP_T B

WHERE B.ACCOUNTCD='61106000'

 

 

위 그림을 보면 알다시피 FROM절에 같은 테이블이지만 다른 조건으로 레코드 한개를 뽑아 왔으며, 그 테이블A를 이용하여같은 테이블이지만 다른 레코드에 값을 대입하는 쿼리입니다. 이 방법을 응용한다면 상당히 많은 곳에 쓰일 듯 합니다. 감사합니다.

반응형
Posted by 과라나
, |

최근에 올라온 글

04-29 01:28

글 보관함