전체 글 109

[데이터 다루기] SQL로 데이터 입력하기

만들어진 테이블에 데이터를 생성하고, 넣고, 읽고, 갱신, 삭제하는 CRUD명령에 대해서 알아보자. 현업에 CRUD명령이 가장 많이 사용된다. 기존 만들어 놓은 테이블을 가공해서 실습을 해보자. 🐕 각 컬럼에 실제 데이터를 어떻게 삽입할까??? 1. 모든 컬럼에 데이터를 삽입할때 INSERT INTO 테이블명 VALUES (컬럼순서대로 값 삽입) 2. 특정 필드에 데이터를 삽입하고자 할 때 ※ id는 AUTO_INCREMENT옵션이 들어가서 값을 넣지 않아도 자동으로 +1하여 값이 들어가게 된다. INSERT INTO 테이블명 (특정컬럼) VALUES (삽입하고자 하는 데이터); 위처럼 ID에 1이 추가되어 값이 들어간 모습을 확인할 수 있다. 이처럼 테이블에 데이터를 입력하는 방법은 2개이다. 전체 컬..

SQL 2023.08.24

[스키마 구성]SQL로 테이블 변경 및 외래키

🌭 테이블 구조수정 → 케이스가 많아서 테이블 구조 수정이 다소 복잡하다. 1. 새로운 컬럼 추가 ALTER NAME 테이블명 ADD COLUMN 컬럼명 데이터값 [옵션]; DESC 테이블; 2. 컬럼 타입 변경 name 컬럼의 데이터 공간을 가변적으로 만들어보자. ALTER TABLE 테이블명 MODIFY COLUMN 기존컬럼명 변경하고자하는 데이터 값; DESC 테이블명; 3. 컬럼 이름 변경 name컬럼명을 modelname으로 바꾸고자 한다. CHANGE COLUMN 은 이름, 데이터값도 바꿀 수 있음. ALTER TABLE 테이블명 CHANGE COLUMN 기존컬럼 새로운컬럼 새로운데이터값; DESC 테이블명; 4. 컬럼 삭제 age컬럼을 삭제해보자. 🌭 연습문제(생성, 조회, 변경) 문제1. ..

SQL 2023.08.24

[스키마 구성]MySQL workbench 기본 사용 방법 이해 및 테이블 만들어보기

🌭WorkBench사용방법 SQL접근방법 두 가지 1. 워크벤치라는 툴을 사용하여 DB다루기 2. 프로그래밍을 사용해서 데이터에 SQL을 넣는다. 결과적으로 데이터베이스에 SQL명령을 전달하기만 하면 된다. 그래서 현업에서는 각 회사마다 웹 기반에 툴을 사용하는경우도 있다. 이 Schema라는 부분은 우리들의 mysql의 데이터베이스가 보여지는 부분이다 처음 접속하면 sys라는 데이터베이스 파일이 있는데, 이 폴더는 mysql 자신만의 설정 데이터 이런 것들도 데이터베이스로 관리해서 보여질 수 있다. mac환경은 administration, schemas가 위에 있고, 윈도우는 아래에 있다. 🌭명령어 익혀보기 이제 mysql프로그램에 스키마를 만들어보는 명령들을 익혀보도록 한다. 데이터베이스 안에는 여러..

SQL 2023.08.23

SQL과 Schema 이해하기

🌭 데이터베이스 스키마(Schema) DB의 테이블 구조 및 형식, 관계 등의 정보를 형식 언어(formal language)로 기술한 것 1. RDB를사용하여 데이터를 저장할 때 가장 먼저 할 일은 데이터의 공통 속성을 식별하여 컬럼으로 정의하고, 테이블을 만드는것 2. 통상적으로 하나의 테이블이 아닌 여러 개의 테이블로 만들고, 각 테이블 구조, 형식, 관계를 정의함. 3. 이를 스키마라고 하며, 일종의 데이터베이스 설계도로 이해하면 됨. 4. 데이터베이스마다 스키마를 만드는 언어가 존재하며, 해당 스키마만 있으면 동일한 구조의 데이터베이스를 만들 수 있음. (데이터베이스 백업과는 달리 데이터 구조만 동일하게 만들 수 있음.) 데이터베이스는 특이하게 다른 기술과는 다르게 처음에 이해해야하는 용어들이 ..

SQL 2023.08.23

Anaconda와 Jupyter Notebook 소개 및 설치

* 만약 workbench에 mysql이 안된다면 시작유형이 중지일 수 있다. 검색 > 서비스 > mysql80 > 오른쪽 마우스 > 시작(s) 이렇게 하면 mysql서버를 다시 시작할 수 있다. 우리는 원격으로 workbench라는 툴을 사용하여 접속하여 실행할 것이다. 각자 환경에서 mysql만 실행이 되어 있는 상태면 된다. workbench를 가지고 sql을 하나씩 익혀보도록 하자. 🌭 anaconda란??? 파이썬 기본(컴파일러), 주요 라이브러리, 주요 툴을 모아놓은 패키지 파이썬의 장점: 라이브러리 ex) pip install library ☞ 파이썬으로 코드를 작성하게 되면, 생각보다 코드를 작성할때마다 다양한 라이브러리를 사용해야 할 경우가 많다. 이 라이브러리를 사용할때는 해당 라이브러..

SQL 2023.08.23

MySQL 환경만들기

🐶환경만들기(Windows환경) 2023년 버전 하나라도 잘못되면 안되므로 천천히 따라오시길 바랍니다. https://www.mysql.com/downloads/ MySQL :: MySQL Downloads MySQL Cluster CGE MySQL Cluster is a real-time open source transactional database designed for fast, always-on access to data under high throughput conditions. MySQL Cluster MySQL Cluster Manager Plus, everything in MySQL Enterprise Edition Learn More » C www.mysql.com Mysql저작권을 오라..

SQL 2023.08.22

[🎉완강🎉]UNION, GROUP BY, HAVING

🐶 집합연산자 테이블을 연결짓고, 원하는 정보를 찾을 수 있다. 집합연산자란 개별적인 SQL결과집합에 대해서 집합 간 연산을 수행할 때 사용하는 연산자. 사용 규칙 1. 첫번쨰 SELECT문과 두번째 SELECT문의 컬럼들이 서로 1:1대응을 해야한다. 2. 데이터 타입이 일치를 해야한다. 3. 컬럼, 데이터타입 둘 중 하나라도 다르다면 에러가 발생한다. 4. SELECT 문은 위에서 아래 방향으로 연산을 수행한다. 5. UNION뿐만 아니라 올 수 있는 연산자로는 UNION, UNION ALL(합집합), INTERSECT(교집합), MINUS(차집합) UNION을 사용하면 서로 다른 테이블에 존재하는 컬럼들을 같은 컬럼에 정보로 넣어서 보여준다. 문제1. 학생명, 학과담당자명 한꺼번에 조회하고 싶다면?..

SQL 2023.08.17

INNER/ OUTER JOIN

🐶 JOIN 기준을 가지고 있는 데이터를 합치는 것 언제사용되는가? 보통 한 테이블 내에서 내가 원하는 정보가 모두 있으면 좋지만, 여러 테이블에 흩어져 있는 경우가 있다. 이렇게 혼재된 데이터를 가져올 때 사용한다. 여러가지 JOIN이 존재하는데, 그 중 우리는 INNER/ LEFT/ RIGHT/ OUTER JOIN을 다룰 것이다. 🐶 INNER JOIN ※ Inner join을 수행하기 위해서는 결합하고자 하는 테이블이 동일한 컬럼을 가져야 한다. 문제1. (테이블 2개인 경우) student 내에 학과 컬럼을 이용해서 profressor 테이블에 있는 연구소 정보를 얻는다. 이 두 개 정보를 조합해 가져오기 위해서는 join을 활용해보자. student 테이블에도 학과가있고, professor테이블..

SQL 2023.08.17

조건문

조건문 조건을 설정하여 원하는 데이터만 추출하는 방법을 알아낼 수 있도록 함. CASE WHEN 웬만한 DBMS에서 다 쓰임. 조건이 여러가지인 경우 유리함. 문제1. 과목 정보에서 이수구분이 전필이라면 전공필수과목이라고 명명하며 아니라면 해당 컬럼을 전공필수 및 선택구분으로 명명하도록 한다. 그리고 학과번호, 과목명, 이수구분을 컬럼으로 나타낼 것이다. END AS라고 한 이유는 해당 조건을 통해 얻어낸 데이터들을 모아놓은 컬럼이 무엇인지 나타내는 별칭 역할을 한다. AS를 빼더라도 AS가 있다고 간주하지만, 여기서는 데이터 집합이 무엇이 있는지 나타내기 위해서 AS를 사용하였다. 문제2. 전공필수과목이 아닌 것들을 전공 선택과목으로 나타내고 싶다면 어떻게 해야할까?????? 문제3. 1학년 2학기 성..

SQL 2023.08.16

WebSQL 내장함수(문자열/ 숫자 함수)

함수란? 함수란 사용자가 사용이 편하도록 미리 정의된 기능의 모음 함수의 종류 단일행 함수: 데이터 베이스에 저장된 자료 한 줄 한 줄을 대상으로 하는 함수 복수행 함수(그룹함수): 테이블 전체를 대상으로 하는 함수 ex) SQLLite 버전 확인 함수 데이터 타입(자료형) ex) TYPEOF() 정수를 넣으면 integer, 실수를 넣으면 real, 문자열을 넣으면 text, 블랍형...? 날짜 및 시간도 텍스트타입니다. * Blob형이란??? (binary large object) 바이너리 형태로 큰 객체들(이미지, 사운드, 비디오 같은 멀티미디어)을 저장한다. 즉, 바이너리로 멀티미디어를 저장함. 문자자료형 처리 내장함수 1. 날짜 및 시간 함수 sqllite에서 날짜, 시간을 나타낼 수 있는 자료..

SQL 2023.08.16