본문 바로가기

sql

여러개 행의 데이터를 구분자를 이용해서 하나의 컬럼으로 표시(LISTAGG 함수 사용) 여러개 행의 데이터를 구분자를 이용해서 하나의 컬럼으로 표시(LISTAGG 함수 사용) 근무 부서번호와 사원의 이름 출력 select deptno, ename from emp; 같은 부서에 근무하는 사원의 이름을 구분자(,)를 이용해 하나의 컬럼에 표시 select deptno, listagg(ename,',') within group (order by deptno) enamefrom empgroup by deptno; 더보기
오라클에서 누적 합계 구하는 함수 sum over 사용하기 오라클에서 누적 합계 구하는 함수 sum over 사용하기 sum(누적할 컬럼명) over(partition by 그룹화할 컬럼명 order by 정렬할 컬럼명 정렬 방식) 아래 테이블에서 항목별로 값을 누적해서 새로운 컬럼에 누적해서 표시하고 싶을 때 sum over 함수를 사용할 수 있다. article 별 amount를 누적해서 날짜 오름차순으로 정렬해서 보여주고 싶을 때select article, amount, sum(amount) over(partition by article order by reg_date) total, reg_date from account; 와 같이 SQL문을 작성한다. 더보기
merge를 이용한 update, insert, delete merge를 이용한 update, insert, delete 조건에 따라 데이터를 insert하거나 update를 하는 기능 제공 MERGE INTO emp c 더보기
connect by를 이용한 계층형 게시판 SQL connect by를 이용한 계층형 게시판 SQL create table board( num number primary key, parent_num number not null, 더보기
SQL문 - case 사용 - 문자열이 일정 길이까지만 보여지게 처리하기 문자열을 DB에서 읽어올 때 일정 길이까지만 보여지고 나머지는 ..으로 처리하기 1. SQL Query에서 처리하기 문자열의 길이가 100자를 넘어서면 100자까지 보여주고 나머지는 ...으로 처리함 select name, CASE WHEN LENGTH(summary) > 100 then SUBSTR(summary,1,100) || '...' ELSE summary END summaryfrom test; 2. java에서 처리하기String msg = "";if(summary.length() >100){ msg = summary.substring(0,100) + "...";} 더보기

반응형