본문 바로가기

oracle10

기초 SELECT문 문제 풀이(4) / scott계정 emp 테이블 기반 -- SCOTT --19) emp 테이블에서 사원번호, 사원이름, 입사일을 출력하는데 입사일이 빠른 사람순으로 정렬하시오. SELECT empno, ename, hiredate FROM emp ORDER BY hiredate ASC; --20) emp 테이블에서 사원이름, 급여, 연봉을 구하고 연봉이 많은 순으로 정렬하시오. SELECT ename, sal, sal*12 FROM emp ORDER BY sal*12 DESC; --21)10번 부서와 20번부서에서 근무하고 있는 사원의 이름과 부서번호를 출력하는데 이름을 영문자순으로 표시하시오. SELECT ename, deptno FROM emp WHERE deptno = 10 OR deptno = 20 ORDER BY ename ASC; --22) 커미.. 2021. 5. 27.
기초 SELECT문 문제 풀이(3) / hr 계정 employees 테이블 기반 -- hr 정렬 -- 문제1) EMPLOYEES 테이블에서 입사일자 순으로 정렬하여 사원번호, 이름, 업무, 급여, 입사일자,부서번호를 출력하라. SELECT employee_id, first_name, job_id, salary, hire_date, department_id FROM employees ORDER BY hire_date ASC; -- 문제2) EMPLOYEES 테이블에서 가장 최근에 입사한 순으로 사원번호, 이름, 업무, 급여, 입사일자,부서번호를 출력하라. SELECT employee_id, first_name, job_id, salary, hire_date, department_id FROM employees ORDER BY hire_date DESC; -- 문제3) EMPLOYEES.. 2021. 5. 27.
SQL SELECT문으로 이것저것 다 해보기(4) / JOIN 우리가 다른 테이블에 있는 자료를 함께 묶어서 작업해야 할 일이 생기곤 합니다. 모든 일을 혼자서 다 할 수 없는 것처럼 다른 테이블에서 내가 필요한 정보를 꺼내오는 작업이 필요한데 그럴 때 SQL에서는 JOIN을 활용합니다. 먼저 제일 많이 쓰이고 중요한 JOIN이 바로 INNER JOIN 입니다. 이름처럼 안에서 꺼내온다 즉 두 개 이상의 테이블을 활용하여서 특정 조건에 맞는 값을 가진 새로운 테이블을 만드는 것입니다. 백문이 불여일견이라고 예제를 통해 알아가보겠습니다. ansi SQL과 Oracle SQL, 두 가지 버전으로 사용하는 방법을 알아볼 것입니다. 1. INNER JOIN --ansi SQL SELECT e.employee_id, e.first_name, e.department_id, d.. 2021. 5. 27.
SQL SELECT문으로 이것저것 다 해보기(3) / ORDER BY, GROUP BY 데이터를 그냥 마구잡이로 보여주지 않고 어느정도 정돈된 상태로 보고 싶은 마음이 있을 것입니다. 널부러져있는 옷가지보다는 착착 잘 정돈된 옷이 더 보기가 좋듯 말이죠. SQL에서는 데이터를 어떻게 정돈할까요? 바로 ORDER BY를 사용하여 우리가 원하는 방식대로 정렬이 가능합니다. SELECT FROM WHERE ORDER BY ORDER BY는 가장 마지막에 등장하며 다음과 같이 활용할 수 있습니다. 1. ORDER BY (ASC / DESC / NULLS FIRST) SELECT ename, sal FROM emp ORDER BY sal ASC; --월급을 기준으로 오름차순으로 정리 SELECT ename, sal FROM emp ORDER BY sal DESC; --내림차순으로 정리 SELECT .. 2021. 5. 27.
SQL SELECT문으로 이것저것 다 해보기(2) / 비교연산자 앞서 1편에서는 테이블에 있는 값만 우리가 쏙쏙 골라서 빼왔다면 이번에는 조건을 걸어서 빼오는 것을 연습해보겠습니다. 자바에서는 ~하는 것을 찾을 때 IF문을 썼는데요 오라클 SQL에서는 WHERE 조건절을 사용합니다! SELECT FROM WHERE 조건절 기본 형식은 위와 같습니다. 그런데 우리가 조건절을 쓸 때 , ~인 것만 찾아주세요. 이렇게만 쓰지 않죠? ~보다 크거나 작거나 ~이거나 아니거나 등등 여러가지 조건을 넣어야합니다. 그런 경우에 비교연산자를 사용합니다. 비교연산자(> = =9000; --이름이 Shanta보다 더 큰 이름 SELECT first_name FROM employees WHERE first_name>'Shanta'; --이름의 첫 스펠링이 J보다 큰 이름 SELECT.. 2021. 5. 26.
기초 SELECT문 문제 풀이(1) / hr계정 employees 테이블 기반 -- hr 계정 -- 문제1) EMPLOYEES 테이블에서 급여가 3000이상인 사원의 사원번호, 이름, 담당업무, 급여를 출력하라. SELECT employee_id, first_name, job_id, salary FROM employees WHERE salary>=3000; -- 문제2) EMPLOYEES 테이블에서 담당 업무가 ST_MAN인 사원의 --사원번호, 성명, 담당업무, 급여, 부서번호를 출력하라. SELECT employee_id, first_name, job_id, salary, department_id FROM employees WHERE job_id = 'ST_MAN'; -- 문제3) EMPLOYEES 테이블에서 입사일자가 2006년 1월 1일 이후에 입사한 사원의 -- 사원번호,.. 2021. 5. 26.
SQL SELECT문으로 이것저것 다 해보기(1) 기본적인 형식 : SELECT (값, 컬럼명, 함수, SUB QUERY) FROM (테이블명, SUB QUERY) SELECT문을 쓸 때에는 기본적으로 어디서 뭘 가져와라~ 시키는 것이기 때문에 SELECT ~ FROM ~을 씁니다. 여기서 SUB QUERY라는 친구가 조금 낯설게 느껴지는데요, 서브쿼리란 하나의 SQL문장 안에 들어있는 또 다른 SQL문을 이야기합니다. 즉 메인 쿼리는 SELECT문이 되고, 추가적으로 조건을 더 줄 때 서브쿼리를 쓰는 것이지요! 이번에는 저번에 만들어뒀던 scott 계정의 employees 테이블로 실습을 해보겠습니다. --현재 계정 (scott)의 모든 테이블 정보 나타내기 SELECT * FROM TAB; 일단 우리가 요리조리 만져볼 테이블의 이름과, 타입 그리고 .. 2021. 5. 26.
Dual table을 활용하여 알아보는 SQL SELECT 함수 Dual table이란 가상의 테이블로 오라클에서 제공하는 간단한 테이블로, 함수 계산값을 바로바로 보여주는 미리보기 같은 존재입니다. 테이블창으로 이동하지 않더라도 함수를 사용한 간단한 식은 콘솔내에서 바로 확인할 수 있다는 장점이 있습니다. 다만 여러줄을 FROM DUAL;로 만들어놓고 블럭으로 실행은 불가능하고 한 줄씩만 볼 수 있습니다. 1.CHR, ||, CONCAT --문자함수 --CHR(숫자) : ASCII값으로 변환되어 넘어온다. -> 문자 SELECT CHR(65) FROM DUAL; SELECT CHR(97) FROM DUAL; --Strig str = "안녕" + "하세요" SELECT '내 점수는 ' ||CHR(65)|| '입니다'FROM DUAL; SELECT CONCAT ('안녕.. 2021. 5. 25.
오라클 기본 자료형(숫자, 날짜) 앞서 문자열 자료형을 다루는 방법을 익혔으니 이번에는 숫자와 날짜를 다루는 방식을 알아보겠습니다. 숫자를 표현하는 자료형은 INTEGER와 NUMBER로 나뉩니다. 정수(JAVA에서는 int) 실수(JAVA에서는 double) INTEGER, NUMBER NUMBER INTEGER를 먼저 살펴보겠습니다. 정수의 숫자를 표현하기 위해서 자바에서는 int를 썼는데요, 오라클에서는 INTEGER로 사용합니다. CREATE TABLE TB_INTEGER( COL1 INTEGER, COL2 INTEGER ); INSERT INTO tb_integer(COL1, COL2) VALUES(123,456); INSERT INTO tb_integer(COL1, COL2) VALUES('123','456'); --이것도 가.. 2021. 5. 25.