-
day02_1 - 오라클(alias, 연결 연산자, 오라클에서 '와 "의 차이, distinct, where 조건문 및 연산자)KIC/DB 오라클 2021. 6. 23. 02:31반응형
[컬럼 이름 대신 리터럴 문자 사용]
-> 문자나 숫자를 컬럼 네임이 아니라 컬럼 네임 있는 자리에 내가 원하는 문자열을 넣는 것
-> ex) select name, position, '반갑습니다' from professor;
-> '을 문자로 표시하고 싶으면 '''' '''' 이렇게 4개씩 쓰기
-> "를 문자로 표기하고 싶으면 ' " ' (내용) ' " ' -> "(내용)"
[ex]
select name||'-'|| position
from professor;
select name||'의 키는 '|| height ||'cm, 몸무게는 '|| weight||'kg입니다.' "키,몸무게 정보"
from student;
[alias]
-> 컬럼명의 별칭, 별명
-> 오라클은 컬럼을 더하고 빼는 것도 가능한데 그러기 위해서 편의성을 위해 컬럼명에 별칭을 붙여주는 것
-> 별칭 사이에 블랭크 있으면 안 되고 필요하면 “” 안에 넣어 사용할 것
[alias에서 특수기호 사용하기]
-> SELECT name 이름, birthday 생년월일, height "키(cm)", weight "무게(kg)"
from student;
-> 키(cm) 처럼 특수문자를 alias로 사용하고 싶다면 인용부호(" ") 안에 묶어준다.
[연결 연산자]
-> 두개의 컬럼을 연결하는 연산자
select name || position 교수 from PROFESSOR;
[Oracle에서 '와 "의 차이]
(')홑따옴표: 문자열을 감싸주는 기호
(")쌍따옴표: 컬럼명 등을 감싸주는 기호
-> 컬럼명을 쓸 때는 쌍따옴표, 문자열은 홑따옴표
[distinct]
-> 중복을 제거하여 조회한다.
-> 많이 쓰면 성능이 좋지 않다.
-> 한번만 사용 가능
select distinct deptno from professor;
[where 조건문]
-> select이 컬럼을 제어하는 구문이라면 where는 row를 제어하는 조건문.
-> 조회하고자 하는 레코드의 조건을 설정
[기본 틀]
select 조회하고자 하는 컬럼명
from 테이블 명
where 조회하고자 하는 레코드의 조건 설정
--1.
select ename, sal, deptno
from emp
where deptno = 10;
--2.
select ename, sal
from emp
where sal>4000;
[where 조건절에서 사용하는 연산자]
--키가 180 이상인 사람 출력
select name, height from student
where height >= 180;
--between 연산자를 사용해서 student 테이블에 몸무게 60~80인 사람의 이름과 체중 출력
select name, weight from student
where weight between 60 and 81;
--비트윈 연산자를 아래처럼도 가능
select name, weight from student
where weight >= 60 and weight <=80;
--IN 연산자를 사용해서 student 테이블에서 101번 학과 학생과 201번 학과 학생들을 모두 출력
select name deptno1 from student
where depno1 in(101,102);
--like 연산자를 사용하여 student 테이블에서 성이 김 씨인 사람을 조회
select name from student
where name like '%김%';
--%: 글자수 무관, 모든 글자 가능
--_: 글자수 한글자, 모든 글자 가능
select name from student
where name like '_진%';
is null/is not null
-> 이 방법은 오라클 방법이고 mysql과는 다르다.
--널 값만 출력하기
select name, bonus
from professor
where bonus is null;
--널 아닌 값만 출력하기
select name, bonus
from professor
where bonus is not null;
검색조건 두개 이상일 때
-> and 연산자 사용 (조건 둘 다 충족)
-- 검색조건 두개
select name, grade, height
from student
where grade =4 and height > 170;
-> or 연산자 사용(조건 둘 중 하나라도 충족)
--or
select name, grade, height, weight
from student
where grade =1 or weight > 80;
--and and
student 테이블 중2학년이면서 키가 180cm 보다 크면서 몸무게가 70kg 보다 큰 학생 출력
select name, grade, height, weight
from student
where grade =2ㅠand height > 180 and weight > 70;
and와 or 조건이 동시에 나오는 경우 우선순위에 주의할 것
-> 가로로 해결하자.
-- 연산자 우선순위는 가로로 해결
select name, grade, height, weight
from student
where grade =2 and (height > 180 or weight > 70);
300x250'KIC > DB 오라클' 카테고리의 다른 글
day03_3 - 오라클 (숫자 함수, round, trunc, mod, ceil, floor, power) (0) 2021.06.24 day03_2 - 오라클 (문자 함수, initcap, lower, upper, length/lengthb, concat, substr, instr, lpad, ltrim, replace) (0) 2021.06.24 day03_1 - 오라클 (집합 연산자, union, inersect, minus) (0) 2021.06.24 day02_2 - 오라클(산술 연산자, 숫자 반올림, 날짜 설정 및 출력, ORDER BY 절, 다중 order by) (0) 2021.06.23 day01 (0) 2021.06.23