Meteora_ 2021. 2. 8. 18:14
728x90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/*
    SELECT
    FROM
    WHERE 조건절   -> if
    비교연산자( > < >= <= = != <> )
    NULL, IS NULL, IS NOT NULL
    &&(AND), ||(OR), ( )
*/
-- 이름 -> Julia
SELECT first_name, last_name, salary
FROM employees
WHERE first_name = 'Julia';
 
-- 급여가 $9000 이상인 사원
SELECT first_name, salary
FROM employees
WHERE salary >= 9000;
 
-- 이름이 Shanta 보다 큰이름
SELECT first_name
FROM employees
WHERE first_name >= 'Shanta';
 
-- 이름의 첫 스팰링이 J보다 큰 이름
SELECT first_name, salary
FROM employees
WHERE first_name >= 'J';
 
-- 매니저가 없는 사원
SELECT first_name, last_name
FROM employees
WHERE manager_id = '';      -- '' != null
 
SELECT first_name, last_name
FROM employees
WHERE manager_id IS NULL;
 
SELECT first_name, manager_id
FROM employees
WHERE manager_id IS NOT NULL;
 
-- && == AND
SELECT first_name, last_name
FROM employees
WHERE first_name = 'Shanta'
    AND last_name = 'Vollman';
 
-- || == OR
SELECT first_name, last_name
FROM employees
WHERE first_name = 'Shanta'
    OR last_name = 'Vollman';
 
-- 이름 John, 월급이 5000이상
SELECT first_name, salary
FROM employees
WHERE first_name = 'John'
    AND salary >= 5000;
 
-- 2007년 12월 31일 이후에 입사한 사원을 출력
SELECT first_name, hire_date
FROM employees
WHERE hire_date > '07/12/31';       -- 071231
 
SELECT first_name, hire_date
FROM employees
WHERE hire_date > TO_DATE('20071231''YYYYMMDD');
 
-- ALL(=AND), ANY(=OR)
SELECT
    *
FROM employees
WHERE first_name = ALL('Julia''John');
--where first_name = 'Julia' AND first_name = 'John'
 
SELECT
    *
FROM employees
WHERE first_name = ANY('Julia''John');
 
SELECT first_name, salary
FROM employees
WHERE salary = ANY(800032006000);
 
-- IN, NOT IN
SELECT first_name, salary
FROM employees
WHERE salary IN(800032006000);
 
SELECT first_name, salary
FROM employees
WHERE salary NOT IN(800032006000);
 
SELECT first_name
FROM employees
WHERE first_name IN('Julia''John');
 
-- BETWEEN 범위 연산자
SELECT first_name, salary
FROM employees
-- WHERE salary >= 3200 AND salary <= 9000;
WHERE salary BETWEEN 3200 AND 9000;
 
SELECT first_name, salary
FROM employees
-- WHERE salary >= 3200 AND salary <= 9000;
WHERE salary NOT BETWEEN 3200 AND 9000;
 
-- LIKE
SELECT first_name
FROM employees
WHERE first_name LIKE 'G_ra_d';     -- _ 한글자가 무엇이든 허용
 
SELECT first_name
FROM employees
WHERE first_name LIKE 'K%y';        -- % 글자 수에 관계없이 모두 허용
 
SELECT first_name, hire_date
FROM employees
WHERE hire_date > '05/12/31' AND hire_date < '07/01/01';
 
SELECT first_name, hire_date
FROM employees
WHERE hire_date LIKE '06%';
 
SELECT first_name, phone_number
FROM employees
WHERE phone_number LIKE '590%';
 
 
cs