SQL 16

[ORACLE] scalar subquery / inline view

※ 서브쿼리 위치별 이름 - 서브쿼리는 오는 위치에 따라서 그 이름이 다름 select : scalar subquery from : inline view where : subquery [1] scalar subquery select (subquery) - select절에 오는 서브쿼리로 한 번에 결과를 1행씩 반환함 ( subquery 결과가 select 절에서 하나의 컬럼 역할을 하는거임) - select문에서 사용하려면 단일 서브쿼리 중에서 단일행이면서 단일컬럼인 경우만 가능 ( = 임의의 숫자나 문자로 인식할 수 있는 서브쿼리 ) ▷ scalar subquery 는 outer join 과 동일 - 다른테이블에 있는 컬럼 (컬럼의 수가 적은경우) 을 추가하고싶을 때 join 대신 사용하면 좋다 ! 가..

SQL 2022.03.23

[ORACLE] SUBQUERY/ 단일행 , 다중행, 상호연관 서브쿼리 / exists 연산자

※ SUBQUERY 서브쿼리 - 쿼리안에 또 다른 쿼리가 담겨 있는 것 (main query 안에 sub query) ▷ subquery 기본형식 - () 안에 서브쿼리를 넣으면 됨 - 서브쿼리는 select 절 / from 절 / where 절에 넣을 수 있으며, 위치에 따라 이름이 달라진다. = > go to day31 ! select * from 테이블 --main query where 조건 연산자 ( select 컬럼 from 테이블 where 조건) --subquery ※ 서브쿼리의 종류 1) 단일행 서브쿼리 - 서브쿼리를 수행한 결과가 1건만 나오고, 이 결과를 main query로 전달해서 main query를 수행하게 됨 - 단일행 서브쿼리일 경우 where 절에서 사용되는 연산자 =, !..

SQL 2022.03.23

[ORACLE] roll up / cube / grouping / join

※ select SQL문 실행순서 1. select 컬럼 2. from 테이블 3. where 조건 4. group by 그룹핑할 컬럼 5. having 조건 6. order by 컬럼 ​▶ 일반적으로 쿼리 실행 순서는 다음과 같습니다. FROM 절에서 테이블을 선택합니다. WHERE 절에서 조건을 필터링합니다. GROUP BY 절에서 그룹을 만듭니다. HAVING 절에서 그룹을 필터링합니다. SELECT 절에서 필요한 열을 선택합니다. ORDER BY 절에서 결과를 정렬합니다. 위 쿼리의 경우 FROM 절에서 두 개의 테이블을 조인하고, WHERE 절에서 조건을 필터링하며, GROUP BY 절에서 그룹을 만들고, SELECT 절에서 열을 선택합니다. 따라서 일반적인 실행 순서에 따르면 위 쿼리는 FRO..

SQL 2022.03.22

[ORACLE] 형변환 함수 / 일반 함수 / 그룹함수

[4] 형변환 함수 ▷ to_date - 문자를 날짜로 변환 - 날짜사이의 간격을 구할때 '문자 - 날짜' 가 불가하니, 문자를 날짜로 형변환 한 후 계산해주어야한다 - 내가 정한 형식대로 문자 -> 날짜로 형변환하여 출력한다. 27일차 강의에도 설명있음. to_date(문자, 패턴) select '2022-05-07', to_date('2022-05-07') from dual; ★ ex ) 특정 컬럼에서 특정 날짜사이의 데이터를 조회하고싶다 ! select * from pd where regdate>='2022-03-13' and regdate< to_date('2022-03-16')+1 order by regdate desc; = 2022.3.13 보다 크고, 2022-03-16 보다 작은 ( = 해..

SQL 2022.03.20

[ORACLE] 집합연산자 / 단일행함수 / 문자함수 / 숫자 함수 / 날짜 함수 / 형변환 함수

※ 집합 연산자 집합 연산자 사용시 주의사항 1) 컬럼의 개수가 일치해야 함 2) 컬럼의 자료형이 일치해야 함 (컬럼명은 달라도 상관 없음) ▷ union - 두 집합을 더해서 결과를 출력, 중복제거, 정렬해줌 (합집합) select id1, name1 from set1 union select id2, name2 from set2; ▷ union all - 두 집합을 더해서 결과를 출력, 중복제거하지 않고, 정렬해주지 않음 select id1, name1 from set1 union all select id2, name2 from set2; ▷ intersect - 두 집합의 교집합 결과를 출력, 정렬해줌 (교집합 : 공통부분) select id1,name1 from set1 intersect selec..

SQL 2022.03.19

[ORACLE] 데이터베이스의 구조 / SQL / 데이터 조회 명령어

※ Oracle 개념 단계별로 접근하기 DB - DBMS - RDBMS - Oracle 1. DB ( Database, 데이터베이스 ) - 중복을 최소화하고, 다수의 사용자가 공유할 수 있도록 데이터들을 모아둔 시스템 - 관련된 데이터를 모아 이를 통합하여 관리할 수 있도록 하는 것 - 데이터를 저장하고 다수의 사용자가 동시에 사용하더라도 데이터의 정합성과 속도가 보장되는 것이 데이터베이스 - 효율적으로 접근이 가능하고 질의를 할 수 있음 2. DBMS ( 데이터베이스 관리시스템, DataBase Mamanagement System ) - 모든 응용프로그램들이 데이터베이스를 공유할 수 있도록 관리해 주고 데이터베이스를 유지하기 위한 일련의 소프트웨어 시스템 [1] 정의기능 : 논리적, 물리적 구조정의 및..

SQL 2022.03.16