Powered by Blogger.
  • Home
  • About
  • Contact
facebook instagram pinterest Email

chuckolet's Blog

Musician & Developer

Oracle XE와 Oracle SQL Developer를 사용하여 공부했으며

(오라클 홈페이지에서 다운 받을 수 있다),

Oracle Standard Edition에 기본적으로 존재하는 샘플 데이터 베이스인 

SCOTT 계정을 사용하였다.


1. Oracle XE 설치와 기본 셋팅

  - SQL*PLUS 실행 방법

  처음에는 보안 상의 이유로 system 등을 제외한 계정은 막혀있을 수 있다.

  따라서 system 계정으로 로그인 한다(암호는 설치 시 설정한 암호). 


  - cmd에서 

  > sqlplus / sysdba


  - 사용자 목록 확인

  > SELECT username, default_tablespace, account_status FROM DBA_USERS; 

  Expired & Locked로 표시되는 사용자는 계정을 풀기 전에는 로그인이 되지 않는다.


  - 계정 Unlock

  > create user scott identified by tiger;


  - 계정 권한 부여

  > grant connect, resource to scott;


  - scott 계정으로 로그인

   > conn scott


  - 테이블 구조 확인

  > desc emp

  > desc dept

  > desc bonus

  > desc salgrade


-------------------------------------------------------------------------------------------------------------------------


2. 기본 문법

⨳ DATA는 대소문자를 구별하지만 SYNTAX는 구별하지 않는다.

2.1. SELECT 

SELECT [열 리스트]
[FROM 테이블 리스트 ]
[WHERE 조건]
[GROUP BY 열 리스트 [HAVING 조건]]
[ORDER BY 열 리스트 [ASC | DESC]];


2.1.1 기본 SELECT : 특정 column만 선택(projection)

> SELECT ename FROM emp;

> SELECT ename, job, comm FROM emp;


2.1.2. AS(ALIAS): column 이름 변경

> SELECT ename 이름 FROM emp;


2.1.3 DISTNCT: 중복 제거

> > SELECT DISTINCT ename FROM emp;


2.1.4 산술 연산 가능

> SELECT ename, (sal + 500) * 12 FROM emp;


2.1.5 NVL(expr 1, expr 2): expr1이 NULL이면 expr2를 출력 (⨳ 데이터 타입에 주의)

> SELECT sal, comm, (sal+NVL(comm,0))*12 FROM emp;


NVL2(e1, e2, e3): e1이 NULL이면 e2, NOT NULL이면 e3

NULLIF(e1, e2): e1과 e2가 같으면 NULL, 아니면 e1

COALESCE(e1, e2, ... en): 첫 NOT NULL인 식 출력, 없으면 en


2.1.6 Literal

SELECT ename || ' is a ' || empno;



2.2 WHERE


2.2.1. 연산자 정리

=, !=, >, <, <=, >=
IN
BETWEEN a AND b
LIKE
IS NULL, IS NOT NULL
AND, OR
NOT
ANY, ALL
EXIST


2.2.1.1 =, !=, >, <, <=, >=

> SELECT ename FROM emp WHERE ename = 'SMITH';


2.2.1.2 LIKE
%: 임의 길이의 문자열(공백 가능)
_: 한 글자

> SELECT ename FROM emp WHERE ename like 'SM%';

> SELECT ename FROM emp WHERE ename like 'SMIT_';


2.2.2. ORDER BY
ASC: 오름차순(기본값)
DESC: 내림차순

> SELECT * FROM emp ORDER BY deptno, sal DESC
Share
Tweet
Pin
Share
No comments
Older Posts

About Me

Unknown
View my complete profile

Categories

  • Android (4)
  • AWS (1)
  • Coding Test (3)
  • Computer (5)
  • etc (1)
  • Git (2)
  • JAVA (3)
  • Linux (6)
  • Machine Learning (7)
  • Music (1)
  • PHP (1)
  • Python (8)
  • React Native (1)
  • SQL (1)
  • Web (12)
  • XML (2)
  • 주식 (1)

Popular Posts

  • Solution: CUDA 9.0 설치 실패 오류 (CUDA 9.0 installer failed on windows 10)
  • 만들면서 배우는 리액트 튜토리얼 - 1.리액트의 특징 및 기본 세팅
  • 만들면서 배우는 리액트 튜토리얼 - 2.JSX
  • 에어드로이드(Airdroid) 로컬 연결 모드 접속 방법(원격 연결 모드로만 접속 해결)
  • 우분투 16.04 크롬 설치, 블루 스크린 문제

recent posts

Total Pageviews

Follow Me

  • facebook
  • instagram
  • Google+
  • youtube

Created with by ThemeXpose