본문 바로가기

Oracle/SQL

(98)
SQL 알고리즘 문제 직각삼각형의 여부 판단(피타고라스의정리이용) 피타고라스의정의로 직각삼각형의여부를 확인 할 수 있다. 이걸 구현 하려면 POWER 라는 함수로 구현 해야한다. (지수함수 구현가능) 예제 2의3승 값. POWER 함수 사용 할것 SELECT POWER(2,3) FROM DUAL; -> 8 문제 630 아래의 수학식 SQL 구현하기 2^2 +3^2 =? SELECT POWER(2,2) + POWER(3,2) FROM DUAL; 피타고라스의 정리로 직각삼각형의 여부를 다음과 같이 출력 되게하시오 ACCEPT P_NUM1 PROMPT '밑변의 길이 입력' ACCEPT P_NUM2 PROMPT '높이 입력' ACCEPT P_NUM3 PROMPT '빗변의 길이 입력' SELECT DECODE( POWER(&P_NUM1,2) + POWER(&P_NUM2,2),P..
SQL 알고리즘 (삼각형, 마름모, 사각형 구현하기) WITH LEVEL_TABLE AS (SELECT LEVEL AS NUM1 FROM DUAL CONNECT BY LEVEL
SQL 알고리즘 ( 구구단 구현하기) select level as num from dual connect by level 먼저 CONNECT BY 절로 1 부터 10 까지 출력 해보도록 한다. 구구단 2단 출력 with num_table as (select level as num from dual connect by level
SQL - DCL 문 GRANT : 권한 부여 데이터를 ACESS 하거나, 조작 하는 권한이다. → 특정데이터를 아무나 조회하면 안되므로, DBA 들이 권한 관리를 철저하게 한다. 현재 접속해 있는 유저가 누구인지 확인 하는 방법 SHOW USER ; 유저 생성하기 CREATE USER C##SMITH IDENTIFIED BY TIGER ; 접속 밑에 초록색+ ( 새접속) 을 클릭하여 새로 생성한 c##smith 에 로그인 해 준다. 이름과, 비밀번호를 입력한후 테스트를 거쳐서 성공 ! 하면 접속하면 되고, sqldeveloper 접속할때 접속 버튼 안보이면 저장을 누르면 된다. 만약 테스트 시 IO 오류가 뜬다면 명령 프롬포트 창에 들어가서 IPCONFIG 들어가고 IP4 주소를 복사 한뒤, LOCALHOST 를 지우고 I..
SQL - WITH 절 사용 서브쿼리 Factoring with 절의 쿼리 결과를 임시테이블로 생성하는것을 subquery factoring 이라고 한다. from 의 서브쿼리와 with 절의 차이점 from 절의 서브쿼리 —> 쿼리문의 결과가 memory 에 올라간다. with 절의 쿼리 ——> 쿼리문의 결과가 disk 에 저장된다. memory ? ram 사용 막 서로 날리면 서로 쓰겠다고 경쟁이 일어날 수있다. disk ? 내가 from 절의 서브쿼리를 써야할지 with 절을 써야할지 고민 된다면 데이터가 있는 서버가 oltp 서버인지, dw 서버인지 먼저 알아야한다. from 절 안에 쿼리문의 결과 데이터가 대용량 데이터 이면 메모리에 올라가면 부담이기 때문에 with 절을 사용해서 disk 에 저장되서 실행 할수 있도록 하는게 바람직하다. subqu..
SQL - WITH 절을 이용한 알고리즘 문제 (1) 구구단출력,log, 주사위던지기(랜덤)확률 문제풀기 문제 1부터 10까지 숫자중 짝수만 출력 with emp2 as (select level as num from dual connect by level
SQL -WITH 절 (가상테이블) with 절 작성시 주의해야할 사항 여러개의 with 절을 동시에 수행하면 모두 다 느려진다. 디스크에는 temp(임시) 로 사용할 수 있는 공간이 한정되어있다. 이 temp 의 공간에 여러개의 with 절이 쓰려고 하면 몇개의 with 절만 쓰고 나머지는 대기해야하므로 시간이 오히려 더 늘어나게 된다. with 절 사용시 중요한 힌트 2가지 inline : temp table 구성 안하겠다. materialize table 구성 하겠다. with 절의 장점. 대용량 데이터를 조회하는 하나의 SQL 안에서 반복적으로 사용되는 쿼리문이 존재할때 성능을 높이기 위한 방법으로 WITH 절을 사용하면 유용하다. 간단한 테스트를 할 때 굳이 테이블을 생성하지 않고 WITH 절로 임시 테이블을 만들어서 테스트를 진..
SQL 제약 (5) Foreign Key (자식키) 특정컬럼에 지정된 데이터만 허용할때 그 지정된 데이터가 다른 테이블의 데이터를 참조하는 경우 허용하는 제약이다. foreign key 제약을 걸려면 참조하려는 테이블에 primary key 제약이 걸려있어야 걸린다. 따라서 만약 dept 를 참조해서 emp 를 데이터를 입력하게 된다면 dept 에 primary key 를 걸어 (부모 테이블) 로 만들고 emp에 foreign key 를 걸어 (자식 테이블) 로 생성이 가능하다. 자식테이블에는 함부로 데이터를 insert 를 할 수 없고 부모 테이블에는 함부로 데이터를 delete 를 할 수 없다. ex ) dept 테이블의 dpetno 에 pk 제약을 걸고 emp 테이블의 deptno fk 제약을 걸게 되면 앞으로 emp 테이블의 deptno 에 데이터..