TIL 23.09.06

ν™©μ€ν•˜Β·2023λ…„ 9μ›” 7일
0

TIL

λͺ©λ‘ 보기
74/146

πŸ“ŒToday I Learned

였라클 데이터 λͺ¨λΈλ§ μ‹€μŠ΅

λ‹€μŒ μ˜ν™” μ‚¬μ΄νŠΈμ˜ λ…„κ°„ λ°•μŠ€μ˜€ν”ΌμŠ€ λž­ν‚Ή νŽ˜μ΄μ§€μ˜ λ°μ΄ν„°λ² μ΄μŠ€ λͺ¨λΈλ§μ„ μ‹€μŠ΅ν–ˆλ‹€.

μˆœμ„œλŠ” λ‹€μŒκ³Ό κ°™λ‹€.

  1. 데이터 μˆ˜μ§‘ + 뢄석

    • λͺ¨λ“  데이터 인식
    • DB에 μ €μž₯ν•  데이터 선별
  2. ERD μž‘μ„±
    a. κ°œλ… 데이터 λͺ¨λΈ > ERD
    b. 논리 λ‹€μ΄μ–΄κ·Έλž¨ μž‘μ„±
    c. 물리 λ‹€μ΄μ–΄κ·Έλž¨ μž‘μ„±

  3. DDL μž‘μ„±

  4. DML μž‘μ„±

    • 데이터 μΆ”κ°€
    • 50편 μ˜ν™”
  5. SELECT μž‘μ„± (κ²€μ¦μš©)

    1. 쑰회수 μˆœμ„œλŒ€λ‘œ κ°€μ Έμ˜€μ‹œμ˜€.(μˆœμœ„, μ˜ν™”λͺ…)
    2. 'μœ ν•΄μ§„' λ°°μš°κ°€ μΆœμ—°ν•œ μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    3. '박희곀' 감독이 μ œμž‘ν•œ μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    4. μˆ˜μƒ 내역이 μžˆλŠ” μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    5. 관객 평점 9.0 이상 받은 μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    6. λ„€ν‹°μ¦Œ 평점이 8점 이상인 μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    7. μ˜ν™”μ˜ λͺ…λŒ€μ‚¬λ₯Ό μ˜ν™” 제λͺ©κ³Ό ν•¨κ»˜ κ°€μ Έμ˜€μ‹œμ˜€.
    8. λ“±λ‘λœ 50개의 μ˜ν™”μ€‘ κ°€μž₯ λ§Žμ€ μ˜ν™”μ— μ°Έμ—¬ν•œ 배우λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    9. 'λ“œλΌλ§ˆ'와 'μ½”λ―Έλ””' 2개 μž₯λ₯΄μ— μ†ν•œ μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    10. λŸ¬λ‹νƒ€μž„μ΄ 120λΆ„ 미만인 μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    11. 15μ„Έ 이상 κ΄€λžŒκ°€ μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
    12. λˆ„μ  관객 10,000,000λͺ…이 λ„˜λŠ” μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.

νŒ€μ›λ“€κ³Ό 회의λ₯Ό 톡해 개랡적인 erdκΉŒμ§€ μž‘μ„±μ„ μ™„λ£Œν•œ λ’€, 각자 μ˜ν™”λ₯Ό λ‚˜λˆ„μ–΄μ„œ DB에 넣을 데이터λ₯Ό λͺ¨μ•„μ™”λ‹€. 이것을 μΆ”ν›„ μž‘μ—…μ— μš©μ΄ν•˜κ²Œ μ‚¬μš©ν•˜λ„λ‘ μ—‘μ…€νŒŒμΌμ— λΆ„λ₯˜ν•˜μ—¬ μ €μž₯ν–ˆλ‹€.

λ‚˜λŠ” erdλ₯Ό μ™„μ„±μ‹œμΌ°κ³ , μ•½ 15개의 μ˜ν™” 데이터λ₯Ό μΆ”μΆœν–ˆλ‹€.

λ‹€λ₯Έ νŒ€μ›μ΄ λ§Œλ“€μ–΄ 온 논리, 물리 λ‹€μ΄μ–΄κ·Έλž¨, DDL을 λ°”νƒ•μœΌλ‘œ DML을 μž‘μ„±ν–ˆλ‹€.
μ—¬λŸ¬ db에 넣을 λ§Žμ€ insert문을 μž‘μ„±ν•΄μ•Όν–ˆλŠ”λ°, κ·Έ 쀑 ν•œ 예둜, 배우 ν…Œμ΄λΈ”μ— 넣을 배우 λͺ…μˆ˜κ°€ 800λͺ…이 λ„˜μ—ˆλ‹€. λΉ„μŠ·ν•œ insertλ¬Έ μ•ˆμ— 배우 μ •λ³΄λ§Œ λ°”κΏ”μ„œ μž‘μ„±ν•˜λ©΄ λ˜λŠ”λ°, λ§Žμ€ λ¬Έμž₯을 λͺ¨λ‘ λ³΅λΆ™ν•˜μ—¬ μž‘μ„±ν•˜κΈ°μ—λŠ” λ„ˆλ¬΄ λ§Žμ•˜λ‹€. κ·Έλž˜μ„œ μ—‘μ…€λ‘œ μž‘μ„±λœ νŒŒμΌμ„ csv파일둜 λ³€κ²½ν•˜μ—¬ μ €μž₯ν•œ λ’€, 이λ₯Ό 읽어와 insert 문으둜 μž‘μ„±ν•˜λŠ” java μ½”λ“œλ₯Ό μž‘μ„±ν•˜μ—¬ ν•΄κ²°ν–ˆλ‹€. 결과둜 λ‚˜μ˜¨ 좜λ ₯ν•œ 정보λ₯Ό λ³΅μ‚¬ν•˜μ—¬ μ‚¬μš©ν•˜μ˜€λ‹€.

static void getActor() {
	try {
		BufferedReader reader = new BufferedReader(new FileReader("C:\\Users\\user\\Desktop\\데이터 - 배우.csv"));

		String line = null;

		while ((line = reader.readLine()) != null) {
			String[] temp = line.split(",");

			System.out.println("INSERT INTO mTBLACTOR VALUES ((SELECT nvl(max(ACTOR_Seq), 0) + 1 FROM mTBLACTOR), '"
						+ temp[1] + ");");
		}

	} catch (Exception e) {
		// TODO: handle exception
	}
}

데이터가 잘 λ“€μ–΄κ°”λŠ”μ§€ ν™•μΈν•˜κΈ° μœ„ν•΄μ„œ select문을 μž‘μ„±ν–ˆλŠ”λ° λ‚˜λŠ” 3, 4λ²ˆμ„ μž‘μ„±ν–ˆλ‹€.

--  3. '박희곀' 감독이 μ œμž‘ν•œ μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
select * from mTBLMOVIE where director = '박희곀';

--  4. μˆ˜μƒ 내역이 μžˆλŠ” μ˜ν™”λ₯Ό κ°€μ Έμ˜€μ‹œμ˜€.
select * from mTBLMOVIE where awards is not null;

μ™„μ„±λœ κ°œλ… λͺ¨λΈλ§μ΄λ‹€.

μ•½ν•œ κ°œμ²΄λ‚˜ κ΄€κ³„κΉŒμ§€λŠ” κ³ λ €ν•˜μ§€ μ•Šκ³  크게 κ°œμ²΄μ™€ 속성, κ΄€κ³„λ“€λ‘œλ§Œ μž‘μ„±ν–ˆλ‹€.

profile
μ°¨κ·Όμ°¨κ·Ό ν•˜λ‚˜μ”©

0개의 λŒ“κΈ€