전체 글
-
2.JOIN _ inner, outer (+ on과 where의 차이)SQL/sql 문법(mysql, mariaDB) 2024. 5. 6. 15:16
▤ 목차" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스✔ INNER JOIN일치하는 데이터만 나온다. null 값이 있다면 포함하지 않는다.있는 자료를 기준으로 진행한다.위의 사진처럼 교집합의 값을 가져온다.⌨ 형식SELECT [COLUMN 목록] FROM [테이블1] INNER JOIN [테이블2] ON [조인 조건]WHERE [검색 조건]💻 코드로 보기# oracle 방식SELECT jikwon_no, jikwon_name, buser_name FROM jikwon,buserWHERE buser_num =buser_no;SELECT jikwon.jikwon_no, jikwon.jikwon_name, buser.buser_na..
-
1. JOIN _ CROSS JOIN, SELF JOIN, EQUI JOINSQL/sql 문법(mysql, mariaDB) 2024. 5. 4. 09:12
▤ 목차" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 한 개 이상의 테이블 들을 연결 또는 결합하여 데이터를 출력하는 방법이다. JOIN은 관계형 데이터베이스의 가장 큰 장점이면서 대표적인 핵심 기능이라고 할 수 있다. 일반적인 경우 행들은 PRIMARY KEY(PK)나 FOREIGN KEY(FK) 값의 연관에 의해 JOIN이 성립된다. 2개의 테이블이 존재할 때, 공통된 열을 통해 2개의 테이블을 합치는 것을 말한다. JOIN의 종류CROSS JOINSELF JOINEQUI JOININNER JOINOUTER JOIN✔ cross join두 개의 테이블 사이에 모든 가능한 조합을 만들어낸다.💻 코드로 보기SELECT j..
-
그룹 함수 : GROUP BY 와 HAVING + 복수행 함수(집계함수)SQL/sql 문법(mysql, mariaDB) 2024. 5. 3. 12:44
▤ 목차" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스✔ GROUP BY데이터를 그룹화하는 명령어이다.GROUP BY절은 주로 집계함수와 같이 사용된다.같은 값을 가진 행끼리 하나의 그룹으로 뭉쳐준다. ⌨ 형식select group 컬럼명.. , 계산함수..from 테이블명where 레코드제어 조건group by group 컬럼명... having 출력 결과 조건💻 코드로 보기SELECT AVG(jikwon_pay), COUNT(*) FROM jikwon WHERE jikwon_gen='남';SELECT AVG(jikwon_pay), COUNT(*) FROM jikwon WHERE jikwon_gen='여'; 👏 중요group ..
-
UNION 코드로 알아보기SQL/sql 문법(mysql, mariaDB) 2024. 5. 2. 16:12
▤ 목차" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스구조가 일치하는 두 개 이상의 테이블 자료 합쳐볼 수 있다.원래 테이블은 그대로 유지된다. ✔ UNION 💻 코드로 보기#sangpum1CREATE TABLE sangpum1(bun INT, pummok varchar(20) NOT NULL);INSERT INTO sangpum1 VALUES(1,'사과');INSERT INTO sangpum1 VALUES(2,'오랜지');INSERT INTO sangpum1 VALUES(3,'바나나');SELECT * FROM sangpum1;#sangpum2CREATE TABLE sangpum2(num INT, sangirum varchar(20..
-
SELECTSQL/sql 문법(mysql, mariaDB) 2024. 5. 1. 08:38
HTML 삽입미리보기할 수 없는 소스DML 을 공부해봤다. 조작어로 테이블 구조가 아닌 테이블 칼럼을 조작하는 언어이다. 그 중 select는 DB 서버로부터 자료를 클라이언트로 읽어 오는 명령어이다. DB는 속도가 생명이다. 같은 결과를 가져온다면, 1번에 왕복하는게 좋다. DB서버는 다양한 곳에서 데이터 처리를 요청받기 때문에 원하는 데이터를 로컬 RAM에 한번에 가져오는 것이 좋다. (물론 서버의 한계가 있다면 상황에 따 Scale-up을 하거나 Scale -out을 고려해야한다.) 우리는 select에 대해 배워보자. -- /////////////////////////select 형식//////////////////////// SELECT [DISTINCT]db명.소유자명.테이블명.칼럼명 [AS ..
-
INDEX 부여와 그 이유SQL/sql 문법(mysql, mariaDB) 2024. 4. 30. 08:48
▤ 목차">HTML 삽입미리보기할 수 없는 소스 DB에서 가장 중요한 것은 탐색 속도이다.예시로는 책뒤에 단어별 색인과 비슷하다.특정 인덱스를 생성하면 해당 컬럼에 데이터들을 정렬하여 별도의 메모리 공간에 데이터의 물리적 주소와 저장된다. pk값(+ unique값)은 자동으로 인덱스가 부여된다.내가 자주 검색하는 칼럼(column)이 있다면 해당 칼럼에 인덱스를 부여해서 빠르게 검색할 수 있다. 쿼리문에 인덱스가 생성된 컬럼을 WHERE 조건으로 걸어주면 옵티마이저가 판단하여 생성된 인덱스를 사용할 수 있다. 📑 index인덱스는 의미 그대로 '색인'이다.내가 원하는 column에 인덱스 표를 부여하는 것이다.보통 하나의 테이블에는 수십 개의 column이 존재한다.database는 첫번째 colu..
-
무결성 제약(constraint)조건 : Primary Key(PK), Check, Unique, Default, Foreign Key(SQL/sql 문법(mysql, mariaDB) 2024. 4. 29. 09:30
▤ 목차">HTML 삽입미리보기할 수 없는 소스✔ 무결성 제약조건잘못된 자료의 입력을 막고자 다양한 입력 제한 조건을 줄 수 있다.Primary Key Constraint : PK 조건에 만족하는가?Foreign Key Constraint : FK 조건에 만족하는가?UNIQUE Constraint : 유니크한 Value인가?CHECK Constraint : 체크값 만족하는가?DEFAULT Constraint : Default 값을 부여하는 제약조건.크게 5가지로 나눌 수 있다. 💻 코드로 보기 CREATE TABLE aa(bun INT(5), irum VARCHAR(5) NOT NULL, juso CHAR(50));INSERT INTO demo VALUES(1,'tom', 'seoul');INSERT ..
-
DML 조작어_ select / insert / update / deleteSQL/sql 문법(mysql, mariaDB) 2024. 4. 28. 08:34
▤ 목차">HTML 삽입미리보기할 수 없는 소스 DML은 Data Manipulation Language의 약자로 데이터 조작 어를 말한다. 정의된 데이터 베이스에 입력된 레코드를 조회하거나 수정하거나 삭제하는 등의 역할을 한다.✔ selectselect는 테이블의 레코드를 선택할 수 있다.이번에는 단순한 형식만 알아보고 다양한 사용들은 따로 정리하겠다.🪄 알고 가자!더보기지금 우리는 같은 컴퓨터 안에서 데이터를 받고있다. 나중에 원격으로 데이터 서버에 연결해 데이터를 읽어올것이다. select 구문으로 원본 db를 읽어온다(읽는 동안만 연결이 state상태이고 데이터를 넘기고 나면 less 상태이다.)만약 계속 원db랑 연결되어있다면? 부하가 올것. select 구문으로 내 로컬 RAM에 가져오면 사..