오라클 scott 계정 등록까지 완료

 

 

데이터 유형(타입)

  • 숫자 : number,number(크기), number(7,2)
  • 날짜 : date
  • 문자 : varchar2(크기)

 

오라클에서는 문자 1개가 1byte

한글은 2byte

대소문자를 가리지 않는다!

 

  • CRUD =
  • C(insert)R(select)U(update)D(delete)
  • DQL : select (조회) DML : insert(삽입), update (수정), delete(삭제)

 

 

데이터를 조회하는 방식

select 컬럼명1, 컬럼명2, 컬럼명3, ...
from 테이블명

 

예)

select deptno, dname, loc
from dept;

select empno, ename, job, mgr, hiredate, sal, comm, deptno
from emp;

-- * : 모든 컬럼을 조회할 때
select * 
from emp;

select empno, ename, job
from emp;

 

 

select문을 사용하는 이유 : 새로운 형태의 데이터를 만들어내기위해.

→ 연산자를 이용함.

 

사원의 연봉을 알아보기 예제)

-- 연산자
-- 산술연산자 : +, -, /, *
-- null 값은 연산이 불가하다, 연산을 하면 모든 결과가 null이 되어버림.
-- 연산이 불가한 null 데이터를 연산이 가능하도록 임시로 변경할 수 있다. 
-- nvl() : null 값을 원하는 값으로 변경해준다. 
-- 기존 컬럼명 별칭 부여 : as (생략가능)

-- 연봉을 알고 싶을 때
-- 연봉 sal * 12 + comm
select ename "사원명" , sal, sal * 12, comm, sal * 12 + nvl(comm,0) as "연봉"
from emp;

nvl(comm,0) → comm 에서 나오는 null 값을 임시적으로 0으로 변경해서 계산해라

 

결과 :

 

 

|| 와 distinct

-- || 를 이용한 합치기 
select ename || ' is a ' || job
from emp;

-- 중복제거
select distinct job
from emp;

 

조건절

-- 조건절
-- where 조건식 (컬럼명 = 값)
-- 비교연산자 ( =, !=, <, >, <=, >= )
-- 숫자 
-- 문자 : 홑따옴표 사용, 대소문자 구분
-- 날짜 : 홑따옴표, 날짜형식(년, 일, 월)

-- 숫자
select *
from emp
where sal >= 3000;

select *
from emp
where deptno = 10;

-- 문자
select *
from emp
where ename = 'SCOTT'; -- 대소문자 구분

select *
from emp
where job = 'SALESMAN';

-- 날짜 (구분자는 생략가능)
select *
from emp
where hiredate < '19820101';
-- where hiredate < '1982/01/01';

SQL 문자를 쓸 때는 ‘ ‘ ( “는 쓰지않는다)

 

논리연산자

-- 논리연산자
-- and, or, not 

select *
from emp
where deptno = 10
and job = 'MANAGER';

select *
from emp
where deptno = 10
or job = 'MANAGER';

select *
from emp
where not deptno = 10;

select *
from emp
where deptno <> 10; -- != , <> 같지 않다는 뜻의 연산자

select *
from emp
where not (sal >= 2000 and sal <= 3000);

select *
from emp
-- where sal >= 2000 and sal <= 3000;
where not (sal < 2000 or sal > 3000);


-- and 와 or 를 간단하게 쓸 수 있는 연산자

-- between 값1 and 값2
select *
from emp
where sal between 2000 and 3000;

select *
from emp
where sal not between 2000 and 3000;

-- in()
select *
from emp
where comm = 300 or comm = 500 or comm = 1400; 

select *
from emp
where comm in(300, 500, 1400);

select *
from emp
where comm not in(300, 500, 1400);

 

like 연산자와 와일드카드

-- like 연산자와 와일드카드
-- _ : 하나의 문자가 반드시 있어야 한다.
-- % : %가 오는 자리에는 값이 없어도 되고 하나 이상 여러 글자가 있어도 된다.
-- 값의 일부를 가지고 조회하는 방식
-- like 만 쓰면 의미가 없어 _, % 와 같이 쓴다.

select *
from emp
where ename like 'F%';

select *
from emp
where ename like '%R';

select *반
from emp
where ename like '%A%';

select *
from emp
where ename like '_L%';

-- like의 부정
select *
from emp
where ename not like '_L%';

 

null 데이터 조건절에서 조회

-- null 데이터 조건절에서 조회
-- is null
-- is not null
-- nvl(null, 바꾸고 싶은 값) : 값의 타입이 일치해야 한다
select *
from emp
where comm is null;

select sal, sal * 12 + nvl(comm,0)
from emp
where comm is not null;

 

정렬(오름, 내림)

-- 정렬(오름, 내림)
-- order by 컬럼명 asc 오름 / desc 내림
-- asc은 생략가능 (기본값) 

select *
from emp
order by sal asc;

select *
from emp
order by sal desc;

select *
from emp
order by hiredate desc;

select *
from emp
order by sal desc, ename asc; -- sal desc 기준으로 ename asc 정렬


-- 부서로 정렬하고 이름으로 정렬
select *
from emp
order by deptno;

select *
from emp
order by ename;

 

 


오늘 UI구현시험은 말아먹었다. 왜 피그마도 못하는 걸까..

진짜 열심히 만들었는데 프로토타입이 실행이 안된다..

암튼 그냥 한숨쉬고 있는데 단위평가 점수가 28점이라 보니까 아직 체점 중이어서 그렇다고, ㅋㅋ 근데 그와중에 인터넷에 치면 다 나오는 서술형을 하나 틀렸다는 걸 알게 되었다.

옆 짝꿍이랑 답 맞춰보니 테스크 플로우를 써야하는데 유저 플로우라고 써놓았다.

이 참에 둘다 뭔지 모르고 인터넷 보고 쓴거니.. 정리하기로

 

테스크 플로우와 유저 플로우

더보기
  • 유저 플로우: 사용자가 특정 목표를 달성하기 위해 시스템이나 서비스와 상호 작용하는 과정전체적으로 나타냅니다. 사용자의 의도, 감정, 환경 등을 고려하여 사실적인 경로뿐만 아니라 가능성 있는 경로까지 포함합니다.

 

  • 테스크 플로우: 사용자가 특정 작업을 완료하기 위해 수행하는 단계들을 구체적으로 보여줍니다. 각 단계에서 사용자가 수행하는 행동사용하는 기능에 초점을 맞춥니다.

+ Recent posts