9월 3일 수업 정리 GITHUB

 1. 로컬저장소에 두개의 커밋을 생성했음

--> 원격저장소와 로컬 저장소를 연결. 


2. 2-1 github에 새로운 저장소를 생성 ( github 사이트에서 new 왼쪽 버튼 ) 

    2-2 local 컴퓨터에서 local 저장소와 2 - 1에서 만든 원격저장소를 연결 

            추가하는 작업 : git remote add origin 201 에서 생성한 원격저장소 주소 

    2-3 local 저장소의 내역을 원격저장소에 반경 ( push 명령어로 했음)

맨처음 : git push -u origin master 

그 다음부터 이후 : git push 


확인할 때 : git hub 홈페이지에 가면 업로드된 파일이  있는지 확인할 것. 



본격적인 수업 내용 


테이블의 구조 ( column, 데이터 타입 ) 확인하는 방법


1. desc 테이블명 : describe 

2. 컬럼 이름만 알 수 있는 방법 ( 데이터 타입은 유추)

    SELECT * 

    FROM 테이블명; 

    툴에서 제공한 메뉴이용

     접속정보 -> 테이블 -> 확인하고자하는 테이블 클릭



* 매우매우 중요


WHERE 절 : 조건에 만족하는 행들만 조회하도록 제한. ( 행을 제한) 

 ex) sal 컬럼의 값이 1500 보다 큰 사람들만 조회한다. -> 7명 


그러면 select 절은 column을 제한한것이다. 


WHERE 절에 기술된 조건을 참(TRUE)으로 만족하는 행들만 조회가 된다. 




조건연산자



/동등비교 ( equla) 

자바에서는 int a = 5; 

a ==5 


SQL에서는 ex) SAL = 1500 



? 자바에서는

   object : "+".equals("-")      

              sql에서는 

              sql : sal = 1500 


/ not equal은

    java : !=

    sql : != 이거나 <> 이거를 쓴다. 


/대입연산자


자바에서는 = 

SQL에서는 :=


과제 ) 


users 테이블에는 총 5명의 캐릭터가 등록이 되어 있는데

       그 중에서 userid 컬럼의 값이 ' brown' 인 행만 조회되도록 

       where 절에 조건을 기술 



SELECT 

FROM users;

WHERE userid  = 'brown'  



/데이터는 대소문자를 가린다 데이터란 각 시트에 있는 COLUMN 도 아니고 그 안에 있는 데이터들 하나하나 그 데이터는 소문자면 소문자를 정확히 써줘서 검색해야 하고 대문자면 대문자를 정확히 써줘서 검색해야 한다. 


/-문자 리터럴 표기법 : '문자열

-숫자 리터럴 표기법 : 숫자 

-날짜 리터럴 표기법 : 항상 정해진 표기법이 아니다 즉 서버마다 다르게 나라마다 다르게 설정되어 있을 수 있다. 

-> 환경설정에서 찾아보면 된다. 



- 날짜 리터럴을 동일하게 설정해줄 수 있는 방법 

TO_DATE( '날짜 문자열 ' , ' 날짜문자열형식') : 문자열을 => 날짜 타입으로 변경해준다


SELECT ename, hiredate 

FROM emp 

where hiredate >= TO_DATE('1982/01/01' , 'YYYY/MM/DD');

--> 이 문자가 어떤 포멧으로 이루어져있는지 알려줘야 한다. 


BETWEEN AND 연산자 : 


WHERE 비교대상 BETWEEN 시작값 AND 종료값;


비교대상이 시작값과 종료값 사이에 있을때 참(TURE) 로 인식

(시작값과 종료값을 포함 그러니까 이상과 이하인 의미 



EX) 과제

 emp  테이블에서 sal 칼럼의 값이 1000이상 2000이하인 사원들의 모든 칼럼을 조회 


-비교대상 BETWEEN 시작값 AND 종료값으로 생성 


SELECT * 

FROM emp 

WHERE sal BETWEEN 1000 AND 2000; 



비교연산자를 이용한 풀이 


SELECT* 

FROM emp 

WHERE sal >= 1000

AND sal <= 2000; 



EX_) 


문제 : 조건에 맞는 데이터 조회하기 

SELECT *

FROM EMP

TO_DATE('1982/01/01', 'YYYY/MM/DD')

select ename, hiredate 

FROM emp

WHERE hiredate BETWEEN TO_DATE('1982/01/01', 'YYYY/MM/DD') AND TO_DATE('1983/01/01', 'YYYY/MM/DD');

연산자는 비교연산자. 

select ename, hiredate 

FROM emp

WHERE  TO_DATE('1982/01/01', 'YYYY/MM/DD') <= hiredate 

AND hiredate <= TO_DATE('1983/01/01', 'YYYY/MM/DD');




* 날짜 나올때 항상 TO_DATE ( '1987/02/01' , 'YYYY/MM/DD') 이렇게 항상 쓰기 



IN 연산자 - OR 연산자로 대체하는 것이 가능하다. 


특정값이 집합(여러개의 값을 포함) 에 포함되어 있는지 여부를 확인 


WHERE 비교대상 IN (값1, 값2.....)

--> 의미 비교대상이 값1이거나 (=)

              비교대상이 값2이거나(=) 




복습 : ' ' 얘는 문자열 표현할때 그리고 이안에는 대문자나 소문자를 구분해야 한다. 


" " 얘는 별칭붙일때 소문자로 나타내고 싶은데,  COLUMN은 항상 대문자로 표현되기떄문에 소문자로 써주고 싶을때 쓰거나 별칭에서 공백이나 특수문자를 표현하고 싶을때 




비교연산자 


LIKE 연산자 : 문자열 매칭  WHERE COLUMN명등 찾고싶은부분 LIKE '문자___'



% 문자열 : 문자가 없거나 여러개의 문자열 

_문자열 : 하나의 임의의 문자 _ 이거하나당 데이터 문자한개를 받기 때문에  데이터문자 3개를 표현하고 싶을때는 ___ 이렇게 3개를 써줘야 한다. 


WHERE ename LIKE 'W___';  ename이 w로 시작하고 이어서 3개의 글자가 있는 사원 



문제 : MEMBER 테이블에서 회원의 성이 신 씨인 사람의 MEM_ID,


SELECT mem_id, mem_name

FROM member 

WHERE mem_name LIKE ' 신% ';


EX) 과제  member 테이블에서 회원의 이름에 글자 이 가 들어가는 모든 사람의 mem_id, mem_name 을 조회하는 퀴리를 작성

SELECT mem_id, mem_name

FROM member

WHERE mem_name LIKE '%이%'; 















댓글