티스토리 뷰

1. SELECT

SELECT * FROM 테이블명

 

2. UPDATE

UPDATE 테이블명 SET 컬럼명 = 설정값

- 다중 컬럼 UPDATE시

UPDATE 테이블명 SET 컬럼1 = (컬럼1설정), 컬럼2 = (컬럼2설정)

 

3. DELETE

DELETE FROM 테이블명

 

4. INSERT

INSERT INTO 테이블명(컬럼1, 컬럼2, 컬럼3) VALUES (컬럼1값, 컬럼2값, 컬럼3값)

 

5. CREATE TABLE

CREATE TABLE 테이블명(
 컬럼1 데이터타입 NULL여부,
 ...
)

-- EX)
CREATE TABLE TEST(
 TEST_A VARCHAR(10) NOT NULL,
 TEST_B DATE NOT NULL,
 TEST_C NUMBER NULL,
);

 

6. MERGE INTO

MERGE INTO 테이블명1 A
	USING 테이블명2 B
    	ON (A.컬럼 = B.컬럼)
    WHEN MATCHED THEN
    	UPDATE SET A.컬럼 = B.컬럼
    WHEN NOT MATCHED THEN
    	INSERT (A.컬럼, A.컬럼2, A.컬럼3)
        VALUES (B.컬럼, B.컬럼2, B.컬럼3)
;

 

7. CASE WHEN

SELECT CASE WHEN 컬럼 = 조건 THEN 리턴값
    WHEN 컬럼 = 조건2 THEN 리턴값2
    ELSE 리턴값3
    END AS 리턴컬럼명
FROM 테이블명

 

8. ALTER 컬럼 추가/삭제

-- 컬럼 추가
ALTER TABLE 테이블명 ADD 컬럼명 데이터타입 기본값(DEFAULT) NULL허용

-- 컬럼 삭제
ALTER TABLE 테이블명 DROP COLUMN 컬럼명

 

* N시간(분)전 데이터 확인하기

-- 시간
SELECT * FROM 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '시간' HOUR);

-- 분
SELECT * FROM 테이블명 AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '분' MINUTE);

 

* ORACLE 규칙

SELECT *
FROM 테이블명
[WHERE]
[GROUP BY]
[HAVING]
[ORDER BY]

 

* 날짜 조회

-- 년월일
SELECT * FROM TEST_TABLE WHERE TRUNC(DATE_TEST) BETWEEN TO_DATE('20220101','YYYYMMDD') AND TO_DATE('20220228','YYYYMMDD');

-- 년월일시분초
SELECT * FROM TEST_TABLE WHERE DATE_TEST BETWEEN TO_DATE('20220101120000','YYYYMMDDHH24MISS') AND TO_DATE('20220228120000','YYYYMMDDHH24MISS');

 

* 오라클 락조회

SELECT DO.OBJECT_NAME,
       DO.OWNER,
       DO.OBJECT_TYPE,
       DO.OWNER,
       VO.XIDUSN,
       VO.SESSION_ID,
       VO.LOCKED_MODE
  FROM V$LOCKED_OBJECT VO, DBA_OBJECTS DO
 WHERE VO.OBJECT_ID = DO.OBJECT_ID