DB 썸네일형 리스트형 [SQLD] ORDER BY. SELECT 문으로 얻어온 데이터를 정렬해보자. ORDER BY 1. SELECT 문을 통해 얻어온 결과를 특정 칼럼 기준으로 오름차순 혹은 내림차순으로 정렬한다. 2. ORDER BY의 정렬 시점은 모든 실행이 끝난 후, 데이터 출력 직전이다. 3. 메모리를 많이 잡아 먹는다. (성능 저하 주의) 4. SELECT FROM ORDER BY (ASC/DESC); 5. 예시 SELECT EMPNO, ENAME, SAL FROM EMP ORDER BY EMPNO DESC; SELECT EMPNO, ENAME FROM EMP ORDER BY ENAME ASC; SELECT EMPNO, ENAME FROM EMP ORDER BY ENAME ASC; 6. ASC는 오름차순이다. 작은 수에서 큰 수로 정렬된다. 100 ~ 1로 7. DESC는 내림차순이다. 큰수.. 더보기 [SQLD] NULL이란 무엇인가? NULL 1. NULL : '데이터 없음, 값이 없음, 부재, 모르는 값'을 뜻한다. 2. 행의 컬럼에 값이 없는 경우를 NULL이라고 하거나 NULL을 가진다고 한다. 3. 예시 SELECT SAL, COMM, SAL+COMM FROM EMP; NULL의 연산 1. NULL은 연산이 불가능하다. (+, -, *, /) NULL과의 비교 연산 1. 비교연산은 IS NULL / IS NOT NULL - 이것만 가능하다. 2. 예시 SELECT EMPNO, COMM FROM EMP WHERE COMM IS NOT NULL; NULL과 관련된 함수 1. NVL(, ) - 값1이 NULL이면 값2로 변경하는 함수 2. NVL2 (,,) - 값1이 NULL이면 값3으로 변경하고 아니면 값2로 변경하는 함수 3. .. 더보기 [SQLD] CASE 함수, DECODE 함수 CASE 함수 1. 조건식에 따라 반환값이 결정되는 구문이다. 2. CASE WHEN THEN END 3. 예제 SELECT ENAME, SAL, CASE WHEN SAL=1000 AND SAL 더보기 [SQLD] 단일행 날짜 함수, 변환형 함수 SYSDATE 1. SELECT SYSDATE FROM DUAL; 현재 날짜 구하기 2. SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL; YEAR만 구하기, MONTH, DAY도 가능함. 3. 예제 코드 SELECT SYSDATE FROM DUAL; SELECT EXTRACT(YEAR FROM SYSDATE) FROM DUAL; SELECT SYSDATE +12 FROM DUAL; 변환형 함수(매우 중요) 1. 문자열 데이터, 숫자형 데이터, 날짜 데이터가 서로 데이터 유형을 변경할 수 있다. 2. 묵시적 형변환은 오라클이 자동으로 형변환을 시켜주는 것을 의미함. 3. 예시 : SELECT 10+'10' FROM DUAL; 숫자에 문자열을 더했는데 알아서 문자를 숫자로 바.. 더보기 [SQLD] 문자형 함수 단일행 문자형 함수 1. 문자열 데이터를 입력했을 때, 변형된 문자열 데이터가 출력되는 함수 2. LOWER, UPPER, INITCAP이 있음. 대문자를 소문자로, 소문자를 대문자로, 첫 글자를 대문자로, 나머지를 소문자로 3. 문자를 입력할 때는 ' '를 붙여줘야한다. 4. 예제 SELECT LOWER('CDEFG') FROM DUAL; SELECT UPPER('ackdfjkd') FROM DUAL; SELECT INITCAP('accbBDEFASDFSADFSDF') FROM DUAL; SELECT LOWER(ENAME) FROM EMP; SELECT UPPER(ENAME) FROM EMP; SELECT 'aBCDEF', INITCAP('aBCDEF') FROM DUAL; SELECT ENAME, I.. 더보기 [SQLD] 함수(Function) 함수(Funtion) 함수란 특정한 값(들)을 함수의 괄호'()'안에 입력하면 한 개의 결과가 출력되는 것이다. 괄호 안에 들어가는 것을 인자(argument)라 한다. 인자는 단일 또는 복수개가 가능하다. 단일 행 함수 1:1 대응. 단일 행 입력했을 때, 하나의 행이 결과로 나온다. DUAL 테이블 1. 오라클 설치시 자동적으로 생성되는 오라클의 표준 테이블 2. 오직 하나의 행(ROW)에 하나의 컬럼만 가지고 있는 DUMMY 테이블 3. 숫자연산, 날짜연산을 위해 쓰이는 것이 일반적이다. ex: SELECT 10+15 FROM DUAL; SELECT 15+10 FROM DUAL; SELECT 15+24 FROM DEPT; 각종 함수 ★ ★ ABS : 절대값 ★SIGN : 부호 출력 ★FLOOR : .. 더보기 [SQLD] 가상 컬럼(Psudocolumn) 가상 컬럼 1. 하나의 테이블에 존재하는 다른 컬럼 값들을 이용해서 만들어진 임시 컬럼 2. ORACLE에서 행의 번호를 나타내는 가상 컬럼은 ROWNUM 3. SQL SERVER에서 상위 행을 출력하는 함수는 TOP 함수 ROWNUM(ORACLE) ROWNUM은 오라클에서 사용된다. 각 행에 대해 임시로 부여되는 일련번호로 이루어진 가상 칼럼이다. SELECT * FROM EMP WHERE ROWNUM 더보기 [SQLD] WHERE절, 논리연산자, LIKE연산자 WHERE절 WHERE절을 쓰면 데이터를 수평으로 가져올 수 있다. 즉, 열을 가져오는 것이 아니라 ROW를 가져온다. SELECT ENAME FROM EMP WHERE JOB='CLERK'; 논리구조 WHERE절은 테이블의 각각의 행에 대해 개체 조건을 만족하는지 여부를 판단한다. 조건을 만족시키는 경우만 출력한다. SELECT ENAME FROM EMP WHERE SAL>2000; 2000 초과만 출력된다. 2000 미만은 출력되지 않는다. 실습하기 1. 사원 테이블 (EMP)에서 근무 부서 번호(DEPTNO)가 20번이 아닌 사원들의 사원번호(EMPNO), 근무부서번호 2. 사원 테이블에서 1982년 1월 1일 (1982/01/01) 이후에 입사한 사원의 사원번호(EMPNO), 이름(ENAME), .. 더보기 이전 1 2 3 4 5 다음 목록 더보기