728x90 ๐ฅ๏ธ/DBMS15 [Oracle ๋ฌธ๋ฒ] ๋ฌธ์์ด ํฉ์น๊ธฐ (concat, ||) Oracle์์ ๋ฌธ์์ด์ ํฉ์น๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด ๋ ๊ฐ์ง ์๋ค. 1. CONCAT select concat(concat('Hello', ' '), 'World') from dual; >>Hello World ๋ ๊ฐ์ ๋ฌธ์์ด์ ํฉ์น๋ ๊ฒ๊น์ง๋ ๊ฐ๋จํ๊ฒ ํํ์ด ๋์ง๋ง, ์ธ ๊ฐ ์ด์๋ถํฐ๋ concat์ ์ค์ฒฉํด์ ์ฌ์ฉํด์ผ ํ๋ค. 2. || select 'Hello'||' '||'World' from dual; >>Hello World ์ธ ๊ฐ ์ด์ ๋ฌธ์์ด์ ์ฌ์ฉํ ๋๋ ๋ณด๊ธฐ ํธํ๊ฒ ํํํ ์ ์๋ค. 2023. 7. 5. [Oracle ๋ฌธ๋ฒ] order by ~ limit ๊ตฌํํ๊ธฐ ๊ตฌํํ๊ณ ์ถ์ ๊ฒ: finished_rate๊ฐ ๊ฐ์ฅ ๋์ ํ์ ์ ๋ณด ์ ์ฒด๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํ๋ ๊ฒฐ๊ณผ: finish_rate=1์ธ ํ์ ์ ์ฒด ์ ๋ณด oracle์ limit์ด ์์ด์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ด์ผํ๋ค๊ณ ํ๋ค. SELECT a.* FROM (SELECT b.*, rownum b_rownum FROM (SELECT c.* FROM some_table c ORDER BY some_column) b WHERE rownum = ๋ง์ฝ upper limit๊ณผ lower limit์ด ์กด์ฌํ๋ ๊ฒฝ์ฐ, ๊ทธ๋ฆฌ๊ณ ์ ๋ ฌ๋ rownum ์นผ๋ผ์ด ํ์ํ ๊ฒฝ์ฐ๋ผ๋ฉด ์์ ๊ฐ์ด ๊ธธ๊ฒ ์จ์ผํ๊ฒ ์ง๋ง, ๋๊ฐ์ ๊ฒฝ์ฐ๋ upper limit๋ง ์์ผ๋ฉด ๋ฏ๋ก ๋ ๊ฐ๋จํ๊ฒ ๋ํ๋ผ ์ ์๋ค. 1. finished_rate๊ฐ ํฐ ์์ผ๋ก ์ ๋ ฌํ๊ธฐ SELECT.. 2023. 6. 28. DB์ค๊ณ) ๋ฐฅ์ง ์ฐพ๋ ํ ์ด๋ธ ์ค๊ณ 1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณํ๊ธฐ db ์ด๋ฆ: yummy_db 1) ๋ง์ง ํ ์ด๋ธ ์ด ์ด๋ฆ place ๋ฐ์ดํฐํ์ ์ต๋ ๊ธธ์ด null ํ์ฉ ์ฌ๋ถ ์๋ฒ (PK) num int, auto_increment x ์๋น ์ด๋ฆ (Unique) place_name char 20 x ์์ ์ข ๋ฅ place_kind char 10 (ํ์, ์ค์, ์์, ๋ฒ ํธ๋จ์) x ๊ฑฐ๋ฆฌ (๋๋ณด) place_howfar tinyint, unsigned o ๊ฐ๊น์ด ๊ฑฐ๋ฆฌ์ ์์นํ ๋ง์ง๋ง ์ ๋ฆฌํ ๊ฒ์ด๋ฏ๋ก tinyint๋ฅผ ์ฌ์ฉํ๋ค. 2) ์์ ํ ์ด๋ธ ์ด ์ด๋ฆ food ๋ฐ์ดํฐํ์ ์ต๋ ๊ธธ์ด null ํ์ฉ ์ฌ๋ถ ์๋ฒ (PK) num int, auto_increment x ์์ ์ข ๋ฅ food_kind char 10 x ์์ ์ด๋ฆ food_name char 20.. 2023. 4. 10. SQL Select ํ์ฉ(์๋ธ์ฟผ๋ฆฌ, group by, join) *๋ฐ์ดํฐ ์๋ฃ๋ ํ๋น๋ฏธ๋์ด ์ฌ์ดํธ์ ํผ๊ณต ์๋ฃ์ค์ ์๋ ์๋ฃ ์๋ธ์ฟผ๋ฆฌ ์๋ธ์ฟผ๋ฆฌ๋ ์ฟผ๋ฆฌ ์์ () ์์ ์ฟผ๋ฆฌ๊ฐ ๋ ์๋ ๊ฒ์ด๋ค. SELECT * FROM member WHERE height > (SELECT height FROM member WHERE mem_name LIKE '์์ดํํฌ'); (limit์ mysql ์ ์ฉ) SELECT * FROM member WHERE height > (SELECT height FROM member WHERE mem_name LIKE '์์ดํํฌ') ORDER BY height DESC LIMIT 3; group by group by๋ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ด์ฃผ๋ ์ญํ ์ ํ๋ฉฐ, ๋์ผํ ๊ฐ์ ๊ฐ๋ ํ๋ค์ ํ๋์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ ์ ์๋ค. group by๋ ์ฃผ๋ก ์ง๊ณํจ์์ ์ฌ์ฉ๋๋ค. su.. 2023. 4. 10. SQL ์ ์ฝ์กฐ๊ฑด (PK, FK, Unique, Check, Default) 1. primary key ์ ์ฝ์กฐ๊ฑด PK๋ ํ ํ์์๋ณํ๊ธฐ ์ํ ๊ฒ! primary key๋ null๊ฐ์ ๊ฐ์ง ์ ์์ผ๋ฏ๋ก not null์ ๋ฃ์ด์ผ ํ๋ค. ๊ทธ๋์ ์ด๋ค db๋ not null์ ์์ ์ด๋ ๋น์ฐํ null๊ฐ์ด ๋ค์ด๊ฐ ์ ์์ผ๋ not null๋ก ์ธ์ํ๋ ๊ฒ ์๊ณ , ๋ฌธ๋ฒ์ ์ค๋ฅ๋ผ๊ณ ์ธ์ํ๋ ๊ฒ๋ ์์ผ๋ ์ฐ๋ ๊ฑธ ์ต๊ดํํ๋ ๊ฒ ์ข๋ค. ์ค์ ๋ฐฉ๋ฒ 1 CREATE TABLE member ( mem_id CHAR(8) NOT NULL PRIMARY KEY, mem_name VARCHAR(10) NOT NULL, . . . ); ์ค์ ๋ฐฉ๋ฒ 2 ALTER TABLE member ADD CONSTRAINT PRIMARY KEY (mem_id); 2. foreign key ์ ์ฝ์กฐ๊ฑด FK๋ ๋ค๋ฅธ ํ ์ด๋ธ์ PK๋ฅผ .. 2023. 4. 10. [MySQL] ํ ์ด๋ธ ๋ง๋ค๊ธฐ 1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑํ๊ณ ์ฌ์ฉํ๊ธฐ (create) create database product_db; use product_db; 2. ํ ์ด๋ธ ๋ง๋ค๊ธฐ (create) ํ ์ด๋ธ์ ์์ฑํ ๋๋ ์ด์ด๋ฆ๊ณผ ๋ฐ์ดํฐํ์ nullํ์ฉ์ฌ๋ถ (PK); ๋ก ์ ์ด์ฃผ๋ฉด ๋๋ค. create table product ( product_name char(20) not null primary key, product_price int not null, product_made char(10), product_company char(20), product_num int ); ๋ง์ฝ ์ด์ ์ด๋ฆ์ด๋ ๋ฐ์ดํฐํ์ ์ ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๋ฉด alter table ํ ์ด๋ธ๋ช change ์์ ์ด์ด๋ฆ ์๋ก์ด์ด์ด๋ฆ ์๋ก์ด๋ฐ์ดํฐํ์ (nullํ์ฉ์ฌ๋ถ) (PK); ๋ก ๋ณ.. 2023. 4. 10. DB์ค๊ณ) ํ์ ํ ์ด๋ธ๊ณผ ์ฑ์ ํ ์ด๋ธ ์ค๊ณํ๊ธฐ 1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณํ๊ธฐ db ์ด๋ฆ: student_db 1) ํ์ ํ ์ด๋ธ ์ด ์ด๋ฆ student_info ๋ฐ์ดํฐํ์ ์ต๋๊ธธ์ด null ํ์ฉ ์ฌ๋ถ ์ด๋ฆ student_name char 5 x ํ๋ student_grade tinyint 1 o ํ๋ฒ (PK) student_number int 8 x ์ฑ๋ณ student_gender char 6(Male/Female) x ์๋ ์์ผ student_birth date YYYY-MM-DD x ํ๊ณผ์ฝ๋ (FK) major_code smallint 3 x student_grade๋ 1~4๊น์ง๋ง ํ๊ธฐ๋๋ฏ๋ก tinyint ํ์ ์ ์ ํํ๊ณ , ํ๊ณผ์ฝ๋๋ ์ธ ์๋ฆฌ ์ ์๋ก ์ค์ ํด์ smallint ํ์ ์ ์ ํํ์๋ค. 2) ๊ณผ๋ชฉ ํ ์ด๋ธ ์ด ์ด๋ฆ subject_info ๋ฐ์ดํฐํ์ .. 2023. 4. 9. [SQL Server] ํ ์ด๋ธ ๋ง๋ค๊ธฐ 1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑํ๊ณ ์ฌ์ฉํ๊ธฐ (create) (MySQL๊ณผ ๋์ผ) create database product_db; use product_db; 2. ํ ์ด๋ธ ๋ง๋ค๊ธฐ (create) ํ ์ด๋ธ์ ์์ฑํ ๋๋ ์ด์ด๋ฆ๊ณผ ๋ฐ์ดํฐํ์ nullํ์ฉ์ฌ๋ถ (PK); ๋ก ์ ์ด์ฃผ๋ฉด ๋๋ค. SQL Server๋ ์ ๋์ฝ๋๊ฐ ํฌํจ๋ nchar, nvarchar ์ฌ์ฉ์ ๊ถ์ฅํ๋ค. create table product ( product_name nvarchar(20) not null primary key, product_price int not null, product_made date not null, product_company nvarchar(20), product_num int ); ๋ง์ฝ ์ด์ ์ด๋ฆ์ ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๋ฉด sp.. 2023. 4. 7. ์ด์ 1 2 ๋ค์ 728x90