본문 바로가기

반응형

JAVA/Oracle

오라클 - 답변형 게시판 쿼리 ( 부모글 지울 때 답변글에 '부모글이 삭제되었다'는 것을 써주기 위한 질의문 Aselect no, b_ref, b_level, b_step from board order by b_ref desc, b_step; B형식 : select rownum num, no, b_ref, b_level, b_step from (A);질의 : select rownum num, no, b_ref, b_level, b_step from (select no, b_ref, b_level, b_step from board order by b_ref desc, b_step); C시작위치형식 : select num from (B) where num = 5;질의 : select num from (select rownum num, no, b_ref, b_level, b_step from (select no, b.. 더보기
오라클 - 테이블 생성시에 제약사항 ** 테이블 생성시에 제약사항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 조건식 연습.. 더보기

반응형