일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- select
- 변수
- DP
- JOIN
- 그대로 출력하기
- oracle
- 2156
- n x 2 타일링 2
- Algorithm
- 백준
- Java
- 반복문
- 데이터베이스
- 입출력
- Dynamic Programming
- algoritm
- ANSI JOIN
- SQL
- 소숫점처리
- Eclipse
- darkest dark
- 오라클
- 동적계획법
- Database
- 데이터길이
- db
- 10951
- 문자열
- 알고리즘
- 자바
- Today
- Total
목록전체 글 (78)
Cracking Code
문자열 처리 함수 중 길이를 정하고 남는 공백은 문자로 채우는 함수가 있습니다. LPAD와 RPAD에 대해서 알아보겠습니다. LPAD - 길이를 정하고 왼쪽부터 남는 공백은 문자로 채웁니다. LPAD(column, n, 's') 사원테이블에서 부서번호 10번의 사원 이름을 LPAD 함수로 15자리로 설정하여 나머지는 * 문자로 채워봅니다. SELECT ENAME, LPAD(ENAME, 15, '*') FROM EMP WHERE DEPTNO = 10; 15자리에서 사원 이름을 제외한 나머지는 왼쪽부터 * 문자로 채워져 출력되는 것을 확인할 수 있습니다. RPAD - 길이를 정하고 오른쪽부터 남는 공백은 문자로 채웁니다. RPAD(column, n, 's') 사원테이블에서 부서번호 10번의 사원 이름을 RP..
문자열의 대소문자를 변환할 수 있는 함수들에는 INITCAP, LOWER, UPPER 함수가 있습니다. 1. INITCAP 문자열의 첫 문자를 대문자로, 나머지는 소문자로 변환합니다. 단, 공백 다음 문자는 대문자로 변환됩니다. INITCAP(string) 부서의 번호, 이름, 지역을 출력하되 이름과 지역의 첫 글자는 대문자, 나머지는 소문자로 출력해봅니다. SELECT DEPTNO, INITCAP(DNAME), INITCAP(LOC) FROM DEPT; 문자열의 맨 처음과 공백 기준으로 바로 다음 문자는 대문자, 나머지는 소문자로 변환되어 출력되는 것을 볼 수 있습니다. 2. LOWER 문자열을 모두 소문자로 변환합니다. LOWER(string) 사원 테이블의 사원 번호, 이름, 업무, 부서번호를 출력..
SELECT로 데이터를 조회할 때 값들을 정렬하여 출력해주는 편리한 기능이 있습니다. 바로 ORDER BY입니다. ORDER BY 절은 SELECT 문으로 검색할 때 원하는 형태로 정렬해주는 기능을 제공해줍니다. SELECT {column} FROM {table} [WHERE 조건식] ORDER BY {column, exp} [ASC | DESC]; ORDER BY 절의 옵션으로는 ASC, DESC가 있습니다. ASC는 오름차순, DESC는 내림차순으로 정렬할 때 입력해주며 옵션을 입력해주지 않을 경우 오름차순으로 정렬하여 출력합니다. 사원의 이름과 급여를 급여순으로 오름차순 정렬하려 출력해봅니다. SELECT ENAME, SAL FROM EMP ORDER BY SAL; 오름차순으로 정렬되어 잘 출력됐습..
DISTINCT 문은 중복된 값을 한 번만 출력합니다. SELECT [DISTINCT] { *, column, ... } FROM table [WHERE 조건식] 사원들의 직업을 중복되지 않게 출력해봅니다. SELECT DISTINCT JOB FROM EMP; 이 처럼 각각 여러 명이 있는 업무여도 한 번만 출력해줍니다.
SQL 문에서 비교를 위한 구문으로 BETWEEN, IN, LIKE, IS NULL 에 대해 알아보았습니다. 1. BETWEEN BETWEEN 구문은 어떤 두 값 사이에 있는 값들을 찾기위한 구문입니다. BETWEEN A AND B A 보다 크거나 같고 B 보다 작거나 같은 범위의 값들을 탐색합니다. 단, A < B 의 조건일 때 동작합니다. 급여가 1000 이상이며 2000 이하인 사원의 번호와 이름, 급여를 출력해봅니다. SELECT EMPNO, ENAME, SAL FROM EMP WHERE SAL BETWEEN 1000 AND 2000; 급여 1000 ~ 2000 의 사원들의 정보가 출력되는 것을 확인할 수 있습니다. 2. IN IN 구문은 조회할 데이터가 다수일 때 유용하게 사용할 수 있습니다. ..
SQL 문에서 조건식을 활용해 원하는 값을 가진 행을 출력할 수 있습니다. SQL에서 SELECT 절에 WHERE 절을 더해 원하는 데이터 목록을 출력할 수 있습니다. 본문에선 WHERE 절을 알아보도록 하겠습니다. -- 기본적인 문법 SELECT 컬럼명 FROM 테이블 WHERE 조건식 바로 예제문을 출력하면 좋겠지만 조건식을 활용하기 위해 비교 연산자가 필요합니다. 비교 연산자의 종류와 사용은 아래 표를 확인하겠습니다. A = B A와 B가 같다 A > B A는 B보다 크다 A >= B A는 B보다 크거나 같다 A < B A는 B보다 작다 A
SQL에는 문자열을 연결해주는 연결 연산자와 함수가 있습니다. 1. 연결연산자 여러 개의 문자열을 연결하여 하나의 문자열로 출력합니다. 우선 예제문을 출력하겠습니다. SELECT ENAME, JOB, ENAME || JOB AS "이름 직업" FROM EMP; ENAME, JOB 그리고 ENAME과 JOB 사이에 ||(연결 연산자)를 넣었더니 두 문자열이 합쳐져서 출력되는 모습을 볼 수 있습니다. 이를 활용하면 직접 문자열을 넣어서 출력도 할 수 있습니다. 사원의 이름과 직급을 보기 좋게 출력해봅시다. SELECT ENAME || '의 직급은 ' || JOB || '입니다.' AS "사원별 직급" FROM EMP; 각각 연결 연산자 양 옆에 작은 따옴표를 활용하여 직접 문자열을 넣은 모습입니다. 위 처럼..
NULL 값은 비어있는 것으로 일반적으로 산술 연산이 불가능합니다. 하지만 NVL 함수와 NVL2 함수는 값을 초기화하여 산술 연산이 가능하게 합니다. NVL 함수는 NULL 값을 지정한 값으로 출력해줍니다. -- 함수의 사용법 NVL(column, value) -- NULL인 값은 대체값으로 출력 SELECT EMPNO, ENAME, COMM, NVL(COMM, 0) FROM EMP; 대체 되어 출력하는 값에는 산술 연산이 가능합니다. SELECT EMPNO, ENAME, COMM, NVL(COMM, 0) + 100 FROM EMP; NVL2 함수는 값이 NULL 인지 아닌지 구분할 수 있도록 합니다. -- 컬럼의 값이 NULL 이면 B, 값이 존재하면 A 를 출력합니다. NVL2(column, A, ..