
๋ค์์ ์ด๋ ์๋ฅ ์ผํ๋ชฐ์ ๊ฐ์
ํ ํ์ ์ ๋ณด๋ฅผ ๋ด์ USER_INFO ํ
์ด๋ธ์
๋๋ค. USER_INFO ํ
์ด๋ธ์ ์๋์ ๊ฐ์ ๊ตฌ์กฐ๋ก ๋์ด์์ผ๋ฉฐ USER_ID, GENDER, AGE, JOINED๋ ๊ฐ๊ฐ ํ์ ID, ์ฑ๋ณ, ๋์ด, ๊ฐ์
์ผ์ ๋ํ๋
๋๋ค.
| Column name | Type | Nullable |
|---|---|---|
| USER_ID | INTEGER | FALSE |
| GENDER | TINYINT(1) | TRUE |
| AGE | INTEGER | TRUE |
| JOINED | DATE | FALSE |
GENDER ์ปฌ๋ผ์ ๋น์ด์๊ฑฐ๋ 0 ๋๋ 1์ ๊ฐ์ ๊ฐ์ง๋ฉฐ 0์ธ ๊ฒฝ์ฐ ๋จ์๋ฅผ, 1์ธ ๊ฒฝ์ฐ๋ ์ฌ์๋ฅผ ๋ํ๋
๋๋ค.
USER_INFO ํ
์ด๋ธ์์ 2021๋
์ ๊ฐ์
ํ ํ์ ์ค ๋์ด๊ฐ 20์ธ ์ด์ 29์ธ ์ดํ์ธ ํ์์ด ๋ช ๋ช
์ธ์ง ์ถ๋ ฅํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์.
์๋ฅผ ๋ค์ด USER_INFO ํ
์ด๋ธ์ด ๋ค์๊ณผ ๊ฐ๋ค๋ฉด
| USER_ID | GENDER | AGE | JOINED |
|---|---|---|---|
| 1 | 1 | 26 | 2021-10-05 |
| 2 | 0 | NULL | 2021-11-25 |
| 3 | 1 | 22 | 2021-11-30 |
| 4 | 0 | 31 | 2021-12-03 |
| 5 | 0 | 28 | 2021-12-16 |
| 6 | 1 | 24 | 2022-01-03 |
| 7 | 1 | NULL | 2022-01-09 |
2021๋
์ ๊ฐ์
ํ ํ์ ์ค ๋์ด๊ฐ 20์ธ ์ด์ 29์ธ ์ดํ์ธ ํ์์ USER_ID ๊ฐ 1, 3, 5 ์ธ ํ์๋ค ์ด๋ฏ๋ก, ๋ค์๊ณผ ๊ฐ์ด ๊ฒฐ๊ณผ๊ฐ ๋์์ผ ํฉ๋๋ค.
| USERS |
|---|
| 3 |
/* TO_CHARํจ์๋ก ์ฐ๋๋ฅผ ๊ฐ์ ธ์ 2021๋
๋ ๊ฐ์
์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ , ๋์ด๊ฐ 20์ด ์ด์ 29์ด ์ดํ์ธ์ง ํ์ธํจ */
SELECT COUNT(*) AS USERS FROM USER_INFO WHERE TO_CHAR(JOINED, 'YYYY') = 2021 AND AGE BETWEEN 20 AND 29;