Structured Query Language의 약자로 데이터 베이스에 접근하고 조작하기 위한 표준 언어이다.sql로 할 수 있는 것들 데이터 검색, 삽입, 수정, 삭제, 데이터 베이스 생성, 테이블 생성, 이외 많은 것들1.관계형 DB : 하나이상의 talble로 이
DML : Data Manipulation Language 데이터 조작語DDL : Data 정의語DCL : Data 제어語TCL : transaction 제어語배웠던 %는 "와일드 카드"라고 불림!!정렬 제일 마지막에 쓰임드디어 배움!!문법이때 talbe_name 뒤
SQL과 함수 data 값을 계산하거나 조작 : 행 함수 행 그룹을 계산하거나 요약 : 그룹 함수 열의 데이터 타입을 변화 오늘은 1번과 2번을 사용할 것임. 1. COUNT 현장에서 굉장히 많이 쓰이는 함수임. NULL인 데이터는 제외됨. return 값은 inte
문법limit 와 order by 처럼 group by도 쿼리 제일 마지막에 사용.sum, avg, count, max, min를 활용하면 더욱 좋음.group by 와 함게 쓰이며 data group에 조건을 적용함.data table을 같이 놔두면 되는데 굳이 여러
서브쿼리 1. 서브쿼리 1) 서브쿼리란? sub-query 하나의 쿼리 안에 포함된 또 하나의 쿼리 2) 서브쿼리의 특징 알려지지 않은 기준을 이용한 검색에 유용 메인 쿼리가 실행되기 이전에 한번만 실행 : select -> sub-query -> main-query
관계형 데이터베이스(table)에서 원하는 정보를 유도하기 위한 기본 연산 집합일반 집합 연살 별 SQLunion(합집합) intersect(교집합) except(차집합) cross join(카디션 프로덕트)순수관계 연산selection(행연산,Ω), projectio
2개의 테이블 간에 서로 정확하게 일치하는 경우를 활용하는 조인 즉, 등가 연산자를 사용한 조인을 의미 대부분 기본키-외래키 관계를 기반으로 발생하나, 모든 조인이 그런것은 아니다.2개의 테이블 간에 서로 정확하게 일치하지 않는 경우를 활용하는 조인 즉, 등가 연산자
서브쿼리에 메인 쿼리의 컬럼이 포함되는지에 따라 연관 서브쿼리(correlated subquery), 비연관 서브쿼리라고 불린다.메인쿼리의 컬럼이 서브쿼리에 포함되며, 메인쿼리의 컬럼은 서브쿼리에 특정 조건으로 사용된다.메인쿼리의 컬럼이 서브쿼리에 포함되지 않으며, 주
문법오른쪽 table은 windowing의 명령어들이다.rank() over(partition by 칼럼명windowing 절)일반 집계함수(sum, avg, max, min...)을 group by 구문 없이 사용할 수 있다.ratio_to_report 함수는 mar
우리가 web application을 만들때 필요한 것들이client가 web에서 볼 UI 화면이 UI화면에 기능을 넣어주고 web application의 뼈대가 되어줄 back-endback-end와 통신을하며 client의 정보를 저장할 DBfont, back-en
code 작성 단, 실행 X code 해석결과 예측code 실행결과 비교분석반드시 책은 온라인으로만 볼 것.code 작성 후 실행시키지 말고 머릿속으로 생각해 볼 것.반드시 관리자 계정이 아닌 다른 계정으로 들어갈 것.일례로 어떤 미X놈이 회사 관리자 계정으로 2TB
#2 SQL 복습 1. select문의 기능들 선택 행 단위로 DATA를 읽는 것. 프로젝션 열 단위로 DATA를 읽는 것. 조인(어려움.) 여러개의 table DATA를 동시에 검색할 때 사용. 가장 중요한 것은 select는 출려을 위한 것이며 table va
선택되는 행 제한 FROM절 바로 뒤에 나옴.실행 순서는 FROM절 -> WHERE절 -> SELECT절 순으로 진행.문법은 where 조건식(column 연산자 값);값 사용시 문자, 날짜 값이면 반드시 작은 따옴표를 쓰자.값을 명시할 때 반드시 table에 저장된
order 절은 제일 마지막에 실행되는 절로써 뒤에는 어떤 절도 올 수 없다.ASC : 오름차순, Default 값 즉, 안 써도 됨.DESC : 내림차순정렬을 성능을 정말 많이 떨어뜨리는 녀석중 하나이다.만약 column 이 alias 상태라면 "그대로" 따라써 줘야
문자, 날짜는 작은 따옴표 but 숫자는 그냥 쓴다.desc는 order by 절에03-01-01, 2003-01-01, 03/01/01 다 됨 하지만 성능을 향상시키기 위해선 자동변환 절차가 없는 것이 좋음 == table에 들어간 form대로 써라!!Data 값들은
그룹 함수란 : 하나 또는 여러개의 값을 받아들이어 함수를 거쳐 단 1개의 결과값을 return 하는 것, 행 집합에 작용하여 그룹 당 하나의 결과를 생성하는 것.그룹 함수의 특징은 null값을 무시한다는 것이다.숫자 data에만 이용이 가능하다.String, date
100번 부서를 제외한 각 부서별 평균 급여가 7,000 이상인 부서별 평균 급여를 출력하시오.50번 부서에 근무하는 매니저별 평균 급여를 출력하시오.동일한 직업을 가진 사원들의 총 수를 출력하시오.직원이 4명 이상인 부서의 부서번호와 인원을 출력하시오.매니저의 사번
sub-query 1. 사용지침 서브쿼리는 항상 괄호로 묶습니다. 비교조건의 오른쪽에 서브 쿼리를 넣습니다. 서브쿼리 결과값이 단일 행이라면 단일 행 연산자를, 복수 행이라면 다중 행 연산자를 사용합니다. sub-query는 모든절에서 사용이 가능합니다. 하지만!! o
문제 1 Zlotkey 와 동일한 부서에 근무하는 다른 모든 사원들의 사번 및 고용날짜를 출력하시오. 문제 2 회사 전체 평균 급여보다 더 급여를 많이 받는 사원들의 사번 및 이름을 출력하시오. 문제 3 이름에 u가 포함되는 사원들과 동일 부서에 근무하는 사원들의
data를 운영하는데 있어 삽입, 수정, 삭제로 운영을 하며 data는 반드시 현재 시점이여야 한다. 또한 무결성을 가지고 있어야 한다.정보 처리1.일괄처리 시스템 : 특정 작업을 여러개 묶어서 한방에 장점은 시스템이 안정적이나 단점은 응답시간이 느리다.2.실시간온라인
data define language로 객체를 정의, 생성, 수정, 삭제하는 것이다.DB의 객체1.테이블 : 기본 저장단위이며 행과 열로 구성됩니다. 2차원 구조2.뷰 : 논리적으로 하나 이상의 티이블에 있는 데이터의 부분집합을 나타냄. -> 데이터 접근을 제한하기 위
서브쿼리 구문을 사용한 테이블 생성AS절 서브쿼리의 문장이 그대로 table화 된다. 하지만 현업에서는 거의사용되지 않는다 왜냐하면 별개의 table로 단절되어있어 data의 최신화가 이루어지지 않기 때문이다.테이블의 데이터가 잘못된 설계로 인하여 수정소요가 생길 때
무결성을 지키기 위해 제약을 주는 조건각 column의 특성을 고려하여 부여1개의 column에 다수의 제약조건을 주는것도 가능 예를 들어 주민등록번호는 pk가 될 순 없지만 not null과 unique라는 2가지 성질을 갖고 있음.제약조건은 column 단위로 부여
table creat 관련 2가지 문제
DB의 객체table : 기본 저장 단위이며 행과열로 구성됩니다.뷰 : 논리적으로 하나 이상의 테이블에 있는 데이터의 부분 집합을 나타냅니다.sequence : 기본 키 값을 생성합니다.index : 질의의 성능을 향상시킴.(튜닝영역)data의 access를 제한하기
부서 50의 사원에 대한 연봉 정보를 포함하는 뷰 salvu50을 생성합니다.급여를 많이 받는 상위 3사람을 뽑아라방법은 인라인 뷰를 통하여 orderby된 table을 가상으로 만든 후그것을 토대로 조건을 뽑아냄.가장 먼저 입사한 4명의 사원의 이름과 입사일을 구하시
공식 홈페이지서 다운 받아주면 된다.window같은 경우 C:\\Program Files(X86)\\H2\\bin 에 들어있는 h2.bat 파일을 실행해주면 된다. 그럼 H2 데이터베이스가 서버 모드로 실행된다. 혹시 실행이 안 된다면 권한주기 : chmod 755 h
이때 oracle은 java 기반이기에 connector도 java를 추가해주어야 한다.본인의 url, id, pw를 잘 입력하면 된다.이때 mysql은 linux 기반이기에 대소문자를 구분한다 따라서 sql문 작성 시 주의가 필요하다.
api를 작성하던 중 자꾸 ObjectId를 메서드로 사용하려면 error가 떠서 개빡쳐서 공식문서를 찾아봐도 안 나왔다.또한 stackoverflow에 좋아요하 5백개 넘게 달린 답변도 아래 문제와 같이 사용했다.그런데 해법은 쉽다. 사실 굉장히 간단한 문제인데 간과
프로젝트를 진행함에 있어 client 사이드로부터 데이터를 list로 전달받아 이를 한큐에 업데이트하고 싶을 경우가 있다.이때 데이터가 db에 존재하면 update 없다면 insert를 하고싶다면 매우 간편한 방법이 있다.어떠한 반복문 보다 가장 빠른 성능을 제공하는