문제풀이

    [Oracle] SQL문제풀이 / SUBQUERY

    목요일 수업 후 받은 문제 25개와 금요일 수업 후 19개의 서브쿼리 문제를 풀었고, 그중 어려웠던 문제와 두 가지 이상의 방법으로 풀어본 문제를 포스팅한다. 과제를 위한 워크시트를 따로 제공받음. (대학교의 정보를 담은) 문제1 ‘음악학과’ 학생들의 평점을 구하려고 한다. 음악학과 학생들의 "학번", "학생 이름", "전체 평점"을 출력하는 SQL 문장을 작성하시오. (단, 평점은 소수점 1자리까지만 반올림하여 표시한다.) 1) 인라인뷰 안에 음악학과 컬럼에 별칭 사용 SELECT V.학번 , V.학생이름 , ROUND(AVG(G.POINT),1) "전체 평점" FROM (SELECT S.STUDENT_NO 학번 , S.STUDENT_NAME 학생이름 FROM TB_STUDENT S JOIN TB_DE..

    [Oracle] SQL문제풀이 / JOIN 연습문제

    오늘 JOIN문제는 총 10문제로, ANSI표준과 오라클 전용 구문 두 가지 다 사용하여 풀었다. 조인 연습문제 문제1 이름에 '형'자가 들어가는 직원들의 사번, 사원명, 직급명을 조회하세요. -- ANSI 표준 SELECT E.EMP_ID 사번 , E.EMP_NAME 사원명 , J.JOB_NAME 직급명 FROM EMPLOYEE E JOIN JOB J ON (E.JOB_CODE = J.JOB_CODE) WHERE E.EMP_NAME LIKE '%형%'; -- 오라클 전용 SELECT E.EMP_ID 사번 , E.EMP_NAME 사원명 , J.JOB_NAME 직급명 FROM EMPLOYEE E , JOB J WHERE E.JOB_CODE = J.JOB_CODE AND E.EMP_NAME LIKE '%형%..

    [Oracle] SQL문제풀이 / 함수 연습 문제

    오늘의 함수 문제는 총 6문제다. 날짜 관련 함수를 사용해서 주민번호에서 생년을 추출하고, 현재의 년도와 계산하여 나이를 구하는 문제가 중요포인트! 함수 연습 문제 문제1 직원명과 주민번호를 조회하세요. 단, 주민번호 9번째 자리부터 끝까지는 '*'문자로 채운다. 예 : 홍길동 771120-1****** SELECT EMP_NAME ,RPAD(SUBSTR(EMP_NO,1,8), 14, '*') FROM EMPLOYEE; 문제2 직원명, 직급코드, 연봉(원) 조회하세요. 단, 연봉은 ₩57,000,000 으로 표시되게 한다. 연봉은 보너스 포인트가 적용된 1년치 급여이다. SELECT EMP_NAME 직원명 , JOB_CODE 직급코드 , TO_CHAR(SALARY * 12 * NVL2(BONUS, BON..

    Java 문제풀이. 야구게임. 랜덤한 숫자 맞추기 !

    문제 /* * 숫자 야구게임 만들기 길이 4의 정수 배열을 만들고 각 인덱스에는 0 ~ 9까지의 중복되지 않는 난수를 저장한다. * 4자리 숫자를 입력받아 * 스트라이크, 볼 등의 힌트를 주며 4자리 난수 숫자를 맞추는 게임이다. * 숫자와 자리가 모두 맞는 경우 스트라이크, 숫자는 맞지만 자리는 * 맞지 않는 경우는 볼 이다. 예) 9183 으로 난수가 발생하면 9356 입력 시 1S 1B이다. * * 단, 기회는 총 10번이며, 10번 이내에 맞추는 경우 "정답입니다." 출력 후 게임 종료 10번의 기회가 모두 소진 되면 * "10번의 기회를 모두 소진하셨습니다. 프로그램을 종료합니다." 출력 후 종료 * * 또한 4자리의 정수를 입력하지 않은 경우에는 "4자리의 정수를 입력해야 합니다." 출력 후 ..

    Java 문제풀이. 홀수를 입력받아 오름/내림차순으로 출력하기 (배열)

    문제 /* 홀수인 양의 정수를 입력 받아 입력 받은 크기 만큼의 정수형 배열을 할당하고 * 배열의 중간까지는 1부터 1씩 증가하여 오름차순으로 값을 넣고, * 중간 이후부터 끝까지는 1씩 감소하여 내림차순으로 값 넣어 출력하세요 * * 단, 홀수인 양의 정수를 입력하지 않은 경우에는 "양수 혹은 홀수만 입력해야 합니다."를 출력하세요 * * -- 입력 예시 -- * 홀수인 양의 정수를 입력하세요 : 7 * * -- 출력 예시 -- * 1 2 3 4 3 2 1 * * -- 입력 예시 -- * 홀수인 양의 정수를 입력하세요 : 8 * * -- 출력 예시 -- * 양수 혹은 홀수만 입력해야 합니다. */ 작성한 코드 package com.greedy.section01.array.level03.hard; imp..

    Java 문제풀이. 랜덤한 로또번호 중복없이 오름차순 정렬하기

    문제 * 로또번호 생성기 * 6칸 짜리 정수 배열을 하나 생성하고 * 1부터 45까지의 중복되지 않는 난수를 발생시켜 각 인덱스에 대입한 뒤 * 오름차순 정렬하여 출력하세요 작성한 코드 int[] rotoNum = new int[6]; //배열 선언 및 할당 for (int i = 0; i

    [자바의 정석] 연습문제. 거스름돈 원화 단위별 출력하기 (배열)

    이전 수업 때 거스름돈을 단위별로 출력하는 문제를 배열없이 반복문으로 해결하는 문제를 받았을 때 풀지 못했는데 ㅠ 배열 파트에 들어가고 나서 자바의 정석 연습문제로 다시 만난 이 문제 배열로는 쉽게 풀 수 있었다!! 배열없이 반복문, 조건문으로 풀 때 내가 캐치하지 못한 건, 거스름돈이 50000원 으로 시작했다면, 처음엔 5로 나누어 10000원을 만들고, 그 다음번엔 2로 나누어 5000원 이런 식으로 거스름돈의 원화 단위를 나누는 방법을 생각 못함. 코드로 정리하면 이런 식으로 만들어서 거스름돈을 출력하는 것. //동전의 단위를 바꾸기 위한 변수 선언. int i = 0 ; //처음엔 5로 나누고, 다음엔 2로 나누고를 홀/짝 반복. if ( i% 2 == 0 ){ coinUnit / 5 ; } e..

    Java 문제풀이 4-2. 주민등록번호 뒷자리 숨기기

    문제 /* 주민등록번호를 스캐너로 입력 받고 문자 배열로 저장한 뒤, * 성별 자리 이후부터 *로 가려서 출력하세요 * * -- 입력 예시 -- * 주민등록번호를 입력하세요 : 990101-1234567 * * -- 출력 예시 -- * 990101-1****** */ 작성한 코드 ) char[] carr = sc.nextLine().toCharArray(); 구문을 사용하여 출력하였음. Scanner sc = new Scanner(System.in); System.out.print("주민등록번호를 입력하세요 : "); char[] carr = sc.nextLine().toCharArray(); String sum =""; for (int i = 0; i ..

    Java 문제풀이 4-1. 문자열을 입력받아 배열에 저장하고 문자 검색하기.

    문제) /* 문자열을 하나 입력받아 문자 자료형 배열로 바꾼 뒤 * 검색할 문자를 하나 입력 받아 * 입력 받은 검색할 문자가 문자열에 몇개 있는지를 출력하세요 * * -- 입력 예시 -- * 문자열을 하나 입력하세요 : helloworld * 검색할 문자를 입력하세요 : l * * -- 출력 예시 -- * 입력하신 문자열 helloworld에서 찾으시는 문자 l은 3개 입니다. * */ (String Class의 toCharArray() : char[] 메소드 활용 가능 char[] carr = 문자열변수.toCharArray(); 와 같이 사용 작성한 코드) Scanner sc = new Scanner(System.in); System.out.print("문자열을 하나 입력하세요 : "); Strin..