SQL

데이터 베이스의 역할 데이터 관리의 필요 대량의 데이터를 저장 및 관리하고 필요한 데이터를 신속히 검색할 수 있도록 보조하는 장치 데이터 관리의 역사 파일 처리 시스템 (전통적 데이터 관리 방식) 1. 데이터베이스가 개발되기 전에 데이터 관리에 사용 2. 업무 별 애플리케이션이 개별 데이터를 데이터 파일에 저장・관리하는 시스템 3. 발생 가능한 문제 데이터 종속의 문제 저장된 데이터가 특정 H/W에서 또는 사용자 및 S/W만 사용될 있도록 제한되는 문제 물리적 데이터 종속 논리적 데이터 종속 데이터 중복의 문제 동일한 사항에 대한 중복 데이터는 일관성, 보안성, 경제성 측면에서 문제 발생 일관성: 한 사실에 대해 한 개의 데이터 값을 유지 보안성: 같은 데이터에 같은 수준의 보안 유지 경제성: 데이터에 ..
· SQL
프로그래머스 MySQL 문제를 풀던 중, 학원에서 배웠던 서브 쿼리가 잘 기억나지 않아 다시 정리해보려 한다. SELECT FOOD_TYPE, REST_ID, REST_NAME, MAX(FAVORITES) FROM REST_INFO GROUP BY FOOD_TYPE ORDER BY FAVORITES DESC; 처음에 이렇게 쿼리를 짰으나 오답이라고 나온다. SQL에서 Group By 절은 MAX와 같은 집계 함수를 이용할 때 특정 그룹을 기준으로 수행하는데, Group By 절은 선택한 모든 컬럼에 적용되어야 한다. 즉, 쿼리에서 REST_ID와 REST_NAME을 Group By 절에 포함시키지 않았기 때문에 오류가 발생한 것이다. 또한, MAX(FAVORITES)를 이용하면 가장 많이 즐겨찾기 된 수..
· 공부
Index란 인덱스는 RDBMS에서 검색 속도를 높이기 위한 기술이다. Table의 컬럼을 색인화(따로 파일로 저장) 하여 검색 시 해당 테이블의 레코드를 Full Scan 하는 게 아니라 색인화 되어있는 인덱스 파일을 검색하여 검색 속도를 빠르게 한다. => B-Tree 구조 보통 SELECT 쿼리의 WHERE절이나 JOIN 예약어를 사용했을 때 인덱스가 사용된다. DELETE, INSERT, UPDATE 쿼리에는 해당 사항이없으며 INDEX 사용 시 오히려 느려진다. SQL 서버에서 데이터의 레코드는 내부적으로 아무런 순서없이 저장되는데 이때 데이터 저장 영역을 Heap이라고 한다. Heap에서는 인덱스가 없는 테이블의 데이터를 찾을 때 전체 데이터 페이지의 처음 레코드부터 끝 페이지의 마지막 레코드..
오류 내용 리뷰를 포함한 Product List Repository를 테스트 하는 중 아래와 같은 오류가 발생했다. @Override public PageResponseDTO list(PageRequestDTO requestDTO) { QProduct product = QProduct.product; QProductImage productImage = QProductImage.productImage; QProductReview review = QProductReview.productReview; JPQLQuery query = from(product); query.leftJoin(product.images, productImage); query.leftJoin(review).on(review.produc..
뱅어돔
'SQL' 태그의 글 목록