본문 바로가기

반응형

분류 전체보기

오라클 - 테이블 생성시에 제약사항 ** 테이블 생성시에 제약사항null : 칼럼의 값이 null 이 될 수 있다. 중복가능not null : 칼럼의 값이 null 이 될 수 없다. 중복간,ㅇ unique : 칼럼의 값이 유일해야 한다. 하지만 null을 허용한다.primary key : 컬럼의 값이 유일해야 하고 null 이 될 수 없다. 다른 레코드와 구별하기 위한 식별자의 역할 default : 칼럼의 값이 생략되면 기본값을 설정하겠다.check : 칼럼의 값을 check 명시된 사항을 만족해야 한다. default 예제)테이블 생성시create table member( id varchar2(20) primary key, pwd varchar2(20) , name varchar2(20) , age number default 20); .. 더보기
오라클 - like 연산자의 변수 처리 및 예제 ** like 연산자의 변수처리: 책이름 중에 "축구" 글자가 들어가는 모든 도서 검색 방법1): "%축구%" 자리 전체를 ? 으로 잡아주고 변수를 이용해 사용 public static void main(String[] args) {// TODO Auto-generated method stub // like 연산자의 변수처리// 책이름 중에 "축구" 글자가 들어가는 모든 도서 검색String user = "축구";String keyword = "%" + user + "%";String sql = "select * from book where bookname like ?"; try {Connection conn = ConnectionProvider.getConnection();PreparedStatemen.. 더보기
오라클 - 질의문을 이용한 책 추천 시스템 풀이 ** 추천시스템과 관련한 것 고객번호 6번에게 어떤 책을 추천 해야 할까? 1) 6번 고객이 구매한 도서목록 출력select bookid from orders where custid = 6; //A 2) A책을 구매한 회원의 아이디와 구매권수를 출력select custid, count(bookid) cnt from orders where bookid in (A) and custid != 6 group by custid; select custid, count(bookid) cnt from orders where bookid in (select bookid from orders where custid = 6)and custid != 6 group by custid; // B 3) B 중에 cnt가 가장 높은.. 더보기
오라클 - 질의문 예제와 풀이 질의문 테스트1.1) 도서번호가 1인 도서의 이름select bookname from book where bookid = 1; 2) 가격이 20,000원 이상인 도서의 이름select bookname from book where price >= 20000; 3) 박지성의 총 구매액select sum(saleprice) from orders where custid = (select custid from customer where name = '박지성'); 4) 박지성이 구매한 도서의 수select count(bookid) from orders where custid = (select custid from customer where name = '박지성'); ---------------------------.. 더보기
오라클 - 자료의 수정과 자료의 삭제 update, delete 명령어 ** 자료의 수정 update 테이블명 set 칼럼이름1=값1, 칼럽이름2 = 값2 [where 조건식] 실습) 홍길동 근로자의 주소를 '서울시 마포구 신수동' 으로 수정합니다.update emp2 set eaddr = '서울시 마포구 신수동' where ename = '홍길동'; 실습) 인사팀(500번) 근무하고 근무개월수가 60개월 이상인 근로자에게 급여를 인상하고자 한다.인상률은 10%이다. 수정하는 질의문을 작성하시오.update emp2 set esal = (esal + esal * 0.1) where dno = 500 and months_between(sysdate, ehiredate) >= 60; ////////////////////////다른 방법 select dno from dept wh.. 더보기
오라클 - union 명령어 예제 및 궁금증(max에 변수 여러개 가능?, 서비쿼리 결과를 가상의 테이블인 = 연산자로 판별?) ** 서브쿼리의 결과는 가상의 테이블인 = 연산자로 판별할 수 있나요?==> 서브쿼리의 칼럼수의 수가 1개이고 select 한 건수가 1개라면 가능합니다.만약에 서브쿼리 결과의 건수가 여러개라면 = 연산자로 표현 할 수 없어요.==> 다중행 연산자를 이용해야 합니다. ** max에 변수를 여러개 넣을 수 있나요? 질문을 위한 테이블 생성ed 학생; create table 학생( 이름 varchar2(20), 국어 number, 영어 number, 수학 number); 질문을 위한 데이터 생성ed 학생데이터; insert into 학생 values('이학균',100,50,70);insert into 학생 values('송인욱',60,70,80);insert into 학생 values('최영록',80,80,.. 더보기
오라클 - outter join 설명 및 예제 ** outter join 관계에 있는 레코드가 없더라도 어느 한쪽의 자료를 출력하기를 기대 형식)select 컬럼명1, 컬럼명2.. from 테이블1, 테이블2 where 조건식 outter 조인의 형식1) select 컬럼명1, 컬럼명2, ....from 테이블1 outter join 테이블2** where 자리에 on 이 들어간다.** left outter join 혹은 right outter join 에서 outter는 생략가능하다.outter join을 기준으로 왼쪽의 자료를 출력하고 싶으면 from 테이블1 left outter join 테이블2 on 조건식outter join을 기준으로 오른쪽의 자료를 출력하고 싶으면 from 테이블1 rigt outter join 테이블2 on 조건식 연습.. 더보기
오라클 명령어 - group by 와 having 설명 및 예제 **칼럼값의 항목별로 나타내는 것group by 칼럼값을 종류별로 나타내는 것형식)select 칼럼명 from 테이블명 group by 칼럼명; 예)모든 사원의 평균급여를 출력select avg(esal) from emp; 직급별 모든 사원의 평균급여 출력select avg(esal) from emp group by erank;// 결과값 : 평균값만 나옴 어떤직급의 평균급여인지 까지 출력select erank, avg(esal) from emp group by erank; ** 오류발생 빈번한 경우select ename, erank, avg(esal) from emp group by erank;==> group by 절에 나타난 칼럼만이 select 절에 올 수 있다. 연습문제)근무개월수가 60개월 이.. 더보기

반응형