배열: 고정 크기, 연속된 메모리, 빠른 인덱스 접근, 크기 변경 어렵다
링크드 리스트: 동적 크기, 비연속 메모리, 인덱스 접근 느림, 크기 변경이 배열에 비해 간단하다.
상속: 코드를 재사용하고 구조화하는 것.
상속을 통해 부모 클래스의 속성과 메서드를 자식 클래스에서 재사용할 수 있음.
상속을 통해 코드의 중복을 줄이고, 클래스 간의 관계를 더 명확히 정의할 수 있음.
SQL: 구조화된 데이터, 고정된 스키마, 강한 일관성, 복잡한 쿼리에 적합.
NoSQL: 유연한 데이터 구조, 스키마 없음, 높은 확장성, 대규모 데이터와 빠른 읽기/쓰기 작업에 적합.
서브쿼리 (Subquery)
정의: 쿼리 내에 포함된 또 다른 쿼리
용도: 다른 쿼리의 결과를 사용해야 할 때
조인 (Join)
정의: 두 개 이상의 테이블을 결합하여 데이터를 조회
용도: 여러 테이블의 데이터를 한 번에 결합하여 조회할 때
사용 예시: 여러 테이블의 관련 데이터를 조회할 때
TCP
연결 지향: 연결을 먼저 설정하고 데이터를 전송.
신뢰성: 데이터가 손실되지 않고 순서대로 도착.
속도: 느림 (오버헤드가 큼).
사용처: 웹 브라우징, 이메일, 파일 전송.
UDP
비연결 지향: 연결 없이 바로 데이터 전송.
신뢰성 없음: 데이터가 손실되거나 순서가 바뀔 수 있음.
속도: 빠름 (오버헤드가 적음).
사용처: 스트리밍, 온라인 게임, DNS 조회.
HTTP (Hypertext Transfer Protocol)
: 웹에서 데이터(텍스트, 이미지 등)를 전송하는 프로토콜.
보안: 데이터 암호화 없음, 중간에서 데이터가 탈취될 위험이 있음.
HTTPS (Hypertext Transfer Protocol Secure)
: HTTP에 보안 기능을 추가한 프로토콜.
보안: 데이터가 암호화되어 안전하게 전송, 중간에서 데이터가 탈취될 위험이 낮음.
상속성은 클래스를 만들고 확장하는 방식이고, 다형성은 다양한 객체를 동일한 방식으로 처리할 수 있게 하는 방법임
INNER JOIN:
설명: 두 테이블에서 조건에 맞는 공통된 데이터를 결합하여 반환
결과: 두 테이블 모두에 존재하는 데이터만 반환
예시: A 테이블과 B 테이블이 있을 때, A와 B에서 공통된 데이터만 조회
LEFT (OUTER) JOIN:
설명: 왼쪽 테이블(A)의 모든 데이터를 반환하며, 오른쪽 테이블(B)에서 일치하는 데이터가 없으면 NULL로 채움
결과: 왼쪽 테이블의 모든 데이터가 포함되고, 오른쪽 테이블의 일치하는 데이터가 없을 경우 NULL이 반환됨
RIGHT (OUTER) JOIN:
설명: 오른쪽 테이블(B)의 모든 데이터를 반환하며, 왼쪽 테이블(A)에서 일치하는 데이터가 없으면 NULL로 채웁니다.
결과: 오른쪽 테이블의 모든 데이터가 포함되고, 왼쪽 테이블의 일치하는 데이터가 없을 경우 NULL이 반환됩니다.
FULL (OUTER) JOIN:
설명: 두 테이블의 모든 데이터를 반환함. 일치하지 않는 경우는 NULL로 채움.
결과: 양쪽 테이블의 모든 데이터가 포함됨. 일치하는 데이터는 결합되고, 일치하지 않는 데이터는 NULL로 표시됨.
CROSS JOIN:
설명: 두 테이블 간의 모든 조합을 반환함.
결과: A 테이블의 모든 행과 B 테이블의 모든 행의 조합을 반환함. 행의 수는 A의 행 수와 B의 행 수를 곱한 값이 됨.