[Oracle] 연산자
by 캐떠린연산자, Operator
- 산술 연산자
- +, -, *, /
%→ 나머지 연산자가 없다!! 대신 mod() 라는 함수로 제공한다.
- 문자열 연산자(concat)
- | | 를 사용한다.
SELECT name || '님' FROM tblMen;
- 비교 연산자
- >, >=, <, <=
- = : Java의 ==와 동일
- <> : Java의 !=와 동일
- 논리값 반환 → SQL에는 boolean이 없다 → 명시적으로 표현 불가능 → 조건이 필요한 상황에서 내부적으로 사용
- 컬럼 리스트에서 사용 불가
- 조건절에서 사용
- 논리 연산자
- and → Java의 &&와 동일
- or → Java의 ||와 동일
- not → Java의 !와 동일
- 논리값 반환
- 컬럼 리스트에서 사용 불가
- 조건절에서 사용
- 대입 연산자
- =
- 컬럼 = 값
- UPDATE 문에서 사용
- 3항 연산자
- 없음
- 제어문 없음
- 증감 연산자(Java의 ++, --)
- 없음
- SQL 연산자
- IN, BETWEEN, LIKE, IS 등...
연산자 사용 예시
-- population, area 컬럼의 자료형: NUMBER
SELECT population, area
FROM tblCountry;
SELECT population + area FROM tblCountry;
SELECT population - area FROM tblCountry;
SELECT population * area FROM tblCountry;
SELECT population / area FROM tblCountry;
-- name, couple 컬럼의 자료형: VARCHAR2
-- ORA-01722: invalid number -> SQL에서 '+'은 피연산자로 숫자만 가질 수 있다.(문자열 연산 불가)
SELECT name, couple, name + couple FROM tblMen;
-- 문자열 더하기 연산자는 '||' 이다.
SELECT name, couple, name || couple FROM tblMen;
-- boolean값은 존재하지 않기 때문에 아무곳에서나 쓸 수 있는건 아니다.(특히 시각적으로 보이는 작업에서는 쓸 수 없다.) > WHERE 절에서 사용 가능!
SELECT height, weight FROM tblMen WHERE height > weight;
테이블 별칭(Alias)
- SELECT * FROM tblMen m;
- as를 붙이지 않고도 사용 가능하다.(가독성 향상 + 개발자 편함)
컬럼의 별칭(Alias)
- 가공 유무 상관없이 별칭을 붙일 수 있다. But!! 되도록 가공된 컬럼에 적용
- 함수 결과에도 적용
- ★★★컬럼명이 식별자로 적합하지 않을 때 사용 → 적합한 식별자로 수정
- 식별자로 사용 불가능한 상황 → 억지로 적용할 때
- column명에는 as 생략 가능!
- 공백은 인식 불가하다. → 공백을 지우거나 " "(큰따옴표)를 사용한다. ex) "여자 친구"
- 예약어, 키워드는 식별자로 사용이 불가하다. (" " 사용 시 가능하나, 헷갈리므로 사용 지양)
SELECT name AS 이름, age, age-1 AS 나이, couple AS 여자친구, name "SELECT" FROM tblMen;
*글 작성에 참고한 내용: 학원 쌤의 열정적인 수업
'DB > Oracle' 카테고리의 다른 글
[Oracle] 컬럼 리스트에서 할 수 있는 행동 :: SELECT절 (2) | 2024.03.15 |
---|---|
[Oracle] WHERE절, BETWEEN절, IN절, LIKE절, NULL, ORDER BY절 (0) | 2024.03.15 |
[Oracle] 잠깐! Commit에 대해 알아보자 :: SQL Developer와 DBeaver의 commit 설정 특징 (1) | 2024.03.15 |
[Oracle] SELECT문 (0) | 2024.02.27 |
[Oracle] Oracle의 ANSI-SQL 자료형 (1) | 2024.02.25 |
블로그의 정보
All of My Records
캐떠린