오늘보다 더 나은 내일의 나에게_
비전공자의 IoT 국비 교육 수강일지 Day_05 본문
다른 비교 조건
BETWEEN ... AND ... => 두 값 사이(지정한 값 포함)
EX) BETWEEN 2500 AND 3000 (2500 이상 3000 이하의 값)
-주로 숫자나 날짜 값에 대해 사용한다
IN(set) => 값 목록 중의 값과 일치 / 똑같은 값 여러 개의 동시에(복수 연산자) / 단일 값
-비교대상의 컬럼과 값이 같은 타입 이어야 한다!
LIKE => 값의 일부만 알고 있을 때(복수 연산자)
-일부를 알고 있을 때 사용
-문장 전체를 의미 > (%)
-문자 하나를 의미 > (_)
-LIKE라는 연산자 안에서만 %,_의미가 다른 연산자에서는 다르다!
**날짜 같은 경우에는 순서에 주의!**
IS NULL => 널 값
연산자를 사용하여 NULL이 있는지의 판단!
논리 조건
-논리 조건 연산자를 사용하고 뒤에는 무조건 새로운 조건식의 와야 한다.
연산자 | 의미 |
AND | 구성 요소 조건이 모두 TRUE면 TRUE 반환 |
OR | 구성 요소 조건이 하나라도 TRUE면 TRUE를 반환 |
NOT | 뒤따르는 조건이 FALSE면 TRUE를 반환 |
NOT 연산자는 BETWEEN, LIKE, NULL 등 다른 SQL 연산자와 함께 사용할 수 있다
***IS 뒤에 NOT 오고, BETWEEN, LIKE, NULL 앞에 NOT이 온다***
컬럼 앞에 NOT이 올 수 있지만 권장하는 방법은 아니다.
****연산자에 AND와 OR가 같이 사용되면 AND 먼저 실행된다!****
ORDER BY
- ASC : 오름차순, 기본값(생략 가능)
- DESC : 내림차순
=> ORDER BY 절은 SELECT 문의 가장 끝에 온다.
사용 방법 => ORDER BY 컬럼명 (ASC OR DESC)
컬럼명 대신 SELECT문의 컬럼순서대로의 숫자를 쓸 수 있으나 권장되는 사용방법이 아니다!
오름차순일 경우 NULL이 최상단에 위치
내림차순일 경우 NULL이 최하단에 위치
***ORDER BY절에 AS별칭 사용 가능***
실행 순서
SELECT --------------3
FROM --------------1
WHERE -------------2
ORDER BY ----------4
ORDER BY절에 두 개 이상의 컬럼이 와서 정렬을 할 때(멀티풀 정렬)
내부적으로 그룹화가 일어난다.
실습 예제
1. 연봉이 12000 이상되는 사원들의 이름 및 연봉을 출력
2. 사원번호가 176 인 사원의 이름과 부서 번호를 출력하시오
3. 연봉이 150,000에서 200,000의 범위 이외인 사원들의 이름 및 연봉을 출력 / 연봉은 AnnSal로 출력
4. 2003/01/01 일부터 2005/05/30일 사이에 고용된 사원들의 이름, 사번, 고용 일자를 출력하시오.
고용 일자를 역순으로 정렬
**날짜 형식은 2003/01/01 = 03-01-01 = 030101 도 가능하지만 테이블 형식에 맞게 해 주는 게 좋다**
5. 20번 및 50번 부서에서 근무하는 모든 사원들의 이름 및 부서 번호를 알파벳순으로 출력
6. 20번 및 50번 부서에 근무하며, 연봉이 200,000 ~ 250,000 사이인 사원들의 이름 및 연봉 출력
7. 2006년도에 고용된 모든 사람들의 이름 및 고용일을 조회
- 칼럼의 형식에 맞춰서 LIKE연산자 사용!( LIKE('2006%') 사용 시 오류! => LIKE('06%') )
8. 매니저가 없는 사람들의 이름 및 업무를 출력
9. 매니저가 있는 사람들의 이름 및 업무, 매니저 번호를 조회
10. 커미션을 받는 모든 사원들의 이름, 연봉 및 커미션을 출력 / 연봉을 역순으로 정령, 연봉은 ANNSAL로 출력
- 커미션을 받는! => 조건(WHERE COMMISSION_PCT IS NOT NULL)
11. 이름의 네 번째 글자가 a인 사원의 이름을 조회
12. 이름에 a 및 e 글자가 있는 사원의 이름을 조회
13. 급여가 2500, 3500, 7000이 아니며 직업이 SA_REP나 ST_CLERK인 사원의 이름과 급여, 직업을 출력
오늘 중요한 내용
**IN 복수 연산자**
오류 내용 정리
ERROR at line 4:
ORA-00911: invalid character (잘못된 문자가 들어있다는 정보)
ED로 편집하고 세미콜론은 적으면 안 된다!
오후에는 자바 첫 수업으로 2시간 동안 가벼운 퀴즈를 진행했다. 전에 1~2개월 정도 혼자 예습을 어느 정도 해둬서 수월하게 문제를 풀 수 있었다. 기본적인 개념에 대한 문제들이 많았고 자바언어를 공부하려면 반드시 알아야 하는 내용들이었다.
1. 프로그래밍 언어 진화 형태는 어셈블리어 ->절차 지향 -> 객체지향 순서이다.
2. 자바에서 문자열을 표현할 수 있는 타입은 String이다
문자를 표현하는 타입은 char(character)이다.
3. 자바 소스파일의 확장자는. java이며 컴파일러에 의해 컴파일되었을 때. class 파일이 된다.
4. 세미콜론은 문장의 끝을 의미하며 사용하지 않으면 컴파일 에러가 발생한다.
5. 식에 여러 개의 연산자가 있는 경우 증감 > 비교 > 대입 순으로 처리(책 p81)
6. 프로그램을 개발할 수 있는 통합 개발 환경은 IDE(integrated Development Environment)이며 자바 응용프로그램을 개발하는 대표적인 IDE는 이클립스와 Intelli J가 있다.
7. 증감 연산자가 피연산자의 뒤에 붙는 경우에는 증감 전의 값 반환 후 증감 처리된다.
8.double은 실수 자료형 타입으로 크기는 8byte이다.
9.switch는 예약어로 변수 선언 시 사용 불가능한 단어
10.||는 비교 연산자(OR)로 두 개의 피연산자가 모두 false 인 경우만 false이며 하나라도 true인 경우에는 true이다.
11.JVM는 JAVA 바이트 코드를 실행할 수 있는 소프트웨어
12.WORKSPACE 자바 프로그램을 개발하는 작업공간\
오늘 크게 배운 것들
-SQL IN, ORDER BY, 날짜형식 조건문
'비전공자의 코딩일지' 카테고리의 다른 글
비전공자의 IoT 국비 교육 수강일지 Day_07 (0) | 2021.12.28 |
---|---|
비전공자의 IoT 국비 교육 수강일지 Day_06 (0) | 2021.12.27 |
비전공자의 IoT 국비 교육 수강일지 Day_04 (0) | 2021.12.23 |
비전공자의 IoT 국비 교육 수강일지 Day_03 (0) | 2021.12.22 |
비전공자의 IoT 국비 교육 수강일지 Day_02 (0) | 2021.12.21 |