DBMS 34

[MS-SQL][FUNCTION] String to Table 변환 함수 (Split)

MS-SQL에서 String Array을 Table로 변환시키는 함수(Split 기능)를 만들어보자.MS-SQL에서 프로시저를 만들다보면 가끔 String Array( ','로 구분되는 String 같은)를 테이블로 변환하면 편하게 진행할수 있을경우가 있다.(보통 WHILE을 돌릴때 혹은 재정렬이 필요할경우)그럴경우 아래 Function을 미리 정의해놓고 사용하면 편리하게 이용이 가능하다. CREATE FUNCTION fnStringToTable (@String Nvarchar(4000), @separator nvarchar(10)) RETURNS @re TABLE     (col nvarchar(100)) AS BEGIN   DECLARE @col Nvarchar(..

DBMS/MS-SQL 2018.06.01

[MS-SQL] 오라클의 dual 사용하기

오라클의 dual과 같은 가상테이블을 mssql에서 사용해보자.MS-SQL은 Oracle의 dual을 사용하는것처럼 쿼리를 작성한 이후 From dual을 그냥 빼버리면 된다. ----------- ORACLE ---------------------- SELECT '테스트' AS TEST1 FROM DUAL ------------------------------------------- ----------- MS-SQL ---------------------- SELECT '테스트' AS TEST1 ------------------------------------------ 관련글 ..

DBMS/MS-SQL 2018.05.31

[MS-SQL] GETDATE() 간단히 날짜 더하기 빼기

MS-SQL에서 간편하게 날짜를 더하거나 빼보자.그냥 - 혹은 +로 숫자를 더해주면 일 단위로 빼거나 더해진다.SELECT GETDATE() - 1 관련글 [MS-SQL] 현재 날짜, 시간 구하기 (GETDATE()) [MS-SQL] [Datetime To Varchar] 날짜를 일정형식의 문자로 만들기 [MS-SQL] 특정 일자 요일 구하기 [MS-SQL] 특정 기간 범위 구하기 [MS-SQL] 날짜, 시간차이 구하기 (DATEDIFF) 날다의 운영환경 ..

DBMS/MS-SQL 2018.05.31

Oracle Chapter10. 트랜잭션 관리(Commit, RollBack) (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 자 이번Chapter에서는 데이터베이스의 가장 중요한 개념인 트랙잭션에 대해 배워보자. 트랜잭션(Transaction) 트랙잭션이란 데이터 처리의 한 단위이다. 오라클에서 발생하는 여러개의 SQL명령문들을 하나의 논리적인 작업단위로 묶은 것이다. 자 예를 들어 test1이라는 테이블을 만들고 난뒤 1과 3이라는 컬럼을 추가시키고 1이라는 컬럼에 2라는 값을 넣었다. 그리고 난뒤 3이라는 컬럼에 4라는 값을 추가시키고 난뒤 1의 컬럼의 값을 2에서 5로 수정하였다. 위 글에 사용된 명령어를 살펴보면 CREATE, ALTER, INSERT, INSERT, UPDATE 이렇게 5개의 명령어를 사용하게 되었다. 위에서 사용된 모든..

DBMS/Oracle 2011.09.20

Oracle Chapter9. 테이블에 데이터 추가 및 수정, 삭제하기(데이터 조작어 DML) (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 이전 Chapter에서 테이블의 생성 및 수정, 삭제하는 DDL에 대해 알아보았다. 이번 Chapter에서는 만들어진 테이블내에 DML(데이터 조작어)를 이용하여 데이터를 추가, 수정, 삭제까지 해보도록 하자. DML이란 스키마 객체의 데이터를 입력(INSERT), 수정(UPDATE), 조회(SELECT), 삭제(DELETE)를 하거나 테이블의 잠금(LOCK TABLE), SQL문의 처리에 대한 정보입수(EXPLAIN PLAN), PL/SQL 모듈을 호출(CALL)등을 수행하는 문장의 집단이다. 각 명령어는 INSERT, UPDATE, DELETE, SELECT, LOCK TABLE, EXPLAIN PLAN, CALL등으로..

DBMS/Oracle 2011.09.09

Oracle Chapter8. 테이블 생성 및 변경, 삭제하기(데이터 정의어 DDL) (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 지금지 미리 만들어진 연습용 테이블을 이용하여 자신이 원하는 정보를 여려형식으로 출력하는 방법을 알아보았다. 그럼 이번 Chapter에서는 DDL(데이터 정의어)를 이용하여 테이블을 직접 생성 및 변경, 삭제까지 해보도록 하자. DDL이란 데이터베이스의 스키마객체를 생성(CREATE), 변경(ALTER), 제거(DROP)을 하거나 권한의 부여(GRANT)나 박탈(REVOKE), 주석(COMMENT) 및 자료의 버림(TRUNCATE)등을 수행하는 문장의 집단이다. 각 명령어는 CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE, COMMENT등으로 시작하는데 이 밖에도 많은 종류의 DDL이 존재하..

DBMS/Oracle 2011.08.30

Oracle Chapter7. 서브 쿼리 (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 (필자가 맥 vmware위에 리눅스를 올려서 오라클을 깐다고 이틀동안 고생했다 ㅠㅠ.. 아무튼 이번 Chapter부터 출력문의 색상과 양식이 다를것이다. ;; 차차 다른 챕터도 똑같이 수정하겠다 ; ㅁ;) 자 이번 Chapter에서 배울것은 서브쿼리문이다 앞서 Chapter에서 조인문을 배울때 두개의 명령을 내려 구할수 있는 값을 테이블을 조인해주어 하나의 명령으로 구해보았다. 서브쿼리문도 두개의 명령을 사용하여 얻는 결과값을 하나의 명령으로 만드는 것인데 조인문처럼 테이블을 연결시키는것이 아니라 하나의 테이블에서 검색한 결과를 다른 테이블에 전달하여 검색하는것이다. 말보다 한번 서브쿼리문으로 SMITH의 부서명을 구해보자..

DBMS/Oracle 2011.08.29

Oracle Chapter6.조인(JOIN) (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 지금까지 하나의 테이블에 대한 SQL 명령어를 살펴보았다. 대충 대충 자주쓰는 명령어만 배웠는데도 머리속이 복잡하다. 물론 명령어를 100%외우면 좋지만 정말 모든 명령어를 100%외우기란 몇몇 천재들 빼고는 불가능할것이다. 필자는 포스트쓰면서 몇번이고 반복하는데도 계속 까먹는다.;; 하지만 어떤 기능을 가진 무엇인가 있다는것은 기억하기 때문에 필요하면 찾기라도 한다. 필자의 포스트를 읽고 있는사람도 그정도는 되어야 한다! 그럼 이제부터 한개이상의 테이블을 사용하여 데이터를 조회해보는 방법을 배워보자. 아래 두개의 테이블이 있다. 하나는 우리가 계속 사용했던 사원(emp)테이블 그리고 나머지 하나는 몇번 본적은 있을듯한 부..

DBMS/Oracle 2011.08.27

Oracle Chapter5. 그룹함수 (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 그룹함수란? 그룹함수는 전체 데이터를 그룹별로 구분하여 통계적인 결과를 구하기 위해 자주 사용되는 함수이다. 앞서 Chapter4에서 배운 함수는 각각의 값을 변화시키는 것이였다면 그룹함수는 그 값들의 평균, 합계, 최소값, 최대값등을 구하는것이다. SUM - 해당 컬럼의 행들의 합계를 구한다. ex) select SUM(sal) from emp; --> emp테이블에서 월급(sal)컬럼의 합계를 구하라. AVG - 해당 컬럼의 행들의 평균을 구한다. ex) select AVG(sal) from emp; --> emp테이블에서 월급(sal)컬럼의 평균을 구하라. MIN - 해당 컬럼의 행중에 최소값을 구한다. MAX - 해..

DBMS/Oracle 2011.08.26

Oracle Chapter4. SQL주요함수 (오라클 입문자용)

현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다. Mir의 운영환경 오라클에서는 데이터를 처리하기위한 다양한 함수가 제공된다. 기능에 따라 숫자함수, 문자함수, 날짜함수 등등 여러종류의 함수가 있다. 그중 대체적으로 많이 사용되는 함수에 대해 알아보자. 우선 함수를 들어가기전에 한가지 알아두고 갈것이 있다. DUAL 테이블 DUAL 테이블이란 SYS사용자가 소유하는 테이블이며 모든 사용자가 사용할수 있도록 설정되어 있다. DUAL 테이블의 구조를 보면 DUMMY란 단 하나의 컬럼으로 구성되어있다. 왜 갑자기 DUAL테이블을 설명하냐면 데이터베이스 작업을 할때 가끔 여러가지 계산이 필요할때가 있다. 예를 들어 134*254를 계산한다고 할때 암산으로 해도 시간이 걸리고 계산기를 꺼낼려니 귀찮..

DBMS/Oracle 2011.08.25