상세 컨텐츠

본문 제목

Oracle 공부 필기내용 (계속해서 추가) 141215

관리X 과거글

by 까먹기전에 2014. 12. 15. 11:23

본문

반응형

##Oracle##


데이터서버의 장점: 중앙집중관리 , 동시접근


sqlplus /nolog


SELECT (DISTAINCT) NAME (FROM TABLENAME) WHERE (조건식을 이용한TRUE값만리턴); 

                      (FROM)  ->산술 연산 불가능한 자리


DISTINCT 중복데이터의 리턴 방지


dual 1번 출력


SQL 비교 연산자

BETWEEN           AND

IN(list)

LIKE  -> where empno LIKE '%8'; -> 8로 끝나는 // 8% -> 8로 시작하는

IS NULL -> null 값이 포함된걸 찾을때는 null이 있으면 무조건 결과값이 null 이라서 제대로된 조건이 되지 않는다. 그래서 null이 들어간 데이터를 추출할때는 is null을 사용해야한다.

null이 아닌값을 추출할때는 is not null 을 사용

<>  은   !=


nvl(타이틀,0) -> 타이틀값이 null이면 0을 리턴-->null도 타입이 int 인지 string인지 보고 리턴값에 맞춰야함

안맞을때는 nvl(TO_CHAR(타이틀),'구민정바보') 처럼 맞춰야한다.

형변환 종류


to_char

to_number

to_date


1985년 -> '85/01/01'


|| 셀렉트 안에서 컬럼과 컬럼을 연결시켜줌

IN (?,?,?) 은 프롬 이후 where 에서 = or 의 기능

------------------------------------------------

create table 테이블명(컬럼명 타입(비트 길이);

insert into 테이블명 (컬럼명) values(데이터);

데이터형

number(숫자길이) , number(총 숫자길이,소수점 길이)

char(255까지)

varchar2(최대 4000바이트) - 한글 - 한글3바이트

------------------------------------------------------

alter table 테이블명 modify(컬럼명 타입(변경할속성값)); ㅡ 타입크기변경

alter table 테이블명 add(컬럼명 타입(타입 크기));         ㅡ  컬럼추가

alter table 테이블명 drop column 컬럼명; ㅡ 해당 컬럼만 삭제

alter table 테이블명 rename column 컬럼명 to 바꿀컬럼명 ㅡ 컬럼명 변경

update 테이블명 set 컬럼명 = '바꿀값' where 컬럼명=변경할 데이터의 위치; ㅡ 특정 데이터 변경

->where 안쓰면 전부다 바뀜 ㅡ,.ㅡ;;

delete from 테이블명 where 조건; ㅡ 데이터나 컬럼 삭제


drop table 테이블명; ㅡ 테이블 삭제

-----------------------------------------------------

lower(컬럼명) -> 소문자

upper(컬럼명) -> 대문자

initcap(컬럼명) -> 첫글자만 대문자

substr(컬럼명, n,n) ->n에서 n까지 짜른문자열을 끝까지 리턴함

betwwen A and B -> A포함 ~ B포함 의 값에 해당하는것만

INSTR(컬럼명 or 스트링 , 문자) -> 문자값의 위치를 리턴한다.

order by 컬럼명 정렬기준;

concat (칼럼명,스트링 , 칼럼명,스트링) -> 칼럼명or스트링을 합쳐준다 2개까지 가능

substr(칼럼명 or 스트링 , m , n) -> m에서 n까지 문자를 리턴,

n을 비우면 0에서 m까지 짜르고 남은값을 출력

------------------------------------------------------------

save 파일명 - sql버퍼에 있는 현재의 내용을 파일로 저장

get 파일명 - 이전에 저장된 파일의 내용을 버퍼로 불러냄

@파일명 == start 파일명 - 명령파일을 실행

L -> 현재 버퍼에 있는걸 확인

--------------------------------------------------------------

ROUND(컬럼명 or 숫자값 , n) -> 소수점n자리까지 반올림함 // day 넣으면 목요일이후만 반올림

trunc(컬럼명 or 숫자값 , n) -> 숫자값을 소수점 n의 위치아래 까지 짜름

floor(컬렴명 or 숫자값) -> 숫자값보다 같거나 작은 최대의 정수를 리턴

ceil(컬럼명 or 숫자값) -> 숫자값보다 같거나 큰 최소의 정수를 리턴

MOD(컬럼명 or 숫자값 , 컬럼명or숫자값) -> 첫번째인수를 두번째 인수로 나눈 나머지를 리턴함;

-----------------------------------------------------------------

sysdate - 숫자 = 날짜

sysdate - 날짜 = 숫자

add_months(날짜값 , n) -> n개월 뒤의 날짜를 리턴함;

months_between(날짜값1,날짜값2) -> 두날짜사이의 개월수를 리턴

next_day(날짜값 , 요일) 

next_day(날짜값,금요일)

관련글 더보기