DB 5

[MySQL] DATE 자료형 정리

MySQL의 날짜 시간 타입 Mysql에는 시간에 대한 다양한 자료형이 있다. 대표적으로 TIMESTAMP , DATE , DATETIME 같은 것들이 있다. JAVA를 주로 사용하는 나를 기준으로 하자면 LocadDate -> DATE, LocalDateTime -> DATETIME 로 바뀌게 된다. 그렇다면 각자 무엇을 어떻게 나타내주는 것인지 알아보자.DATE 와 DATETIME주로 사용되는 자료형이다. 둘 다 타입명 자체에서 알 수 있듯이 날짜와 날짜+시간을 저장하기 위한 타입이다. DATE : 'YYYY-MM-DD' 포맷으로 표현되고, DATETIME : 'YYYY-MM-DD hh:mm:ss' 의 포맷으로 표현된다.이 때 구분자는 다른 구두점으로도 변경 가능하나 주의를 하며 변경해야한다.DAT..

DB/MySQL 2024.11.20

[MySQL] 날짜, 시간 표기 방식 DATE_FORMAT()

MySQL DATE_FORMAT 활용MySQL은 DATE, DATETIME, TIMESTAMP 같은 다양한 시간 자료형을 지원합니다. 하지만 SQL문으로 출력할 때 원하는 형식이 아닐 수 있습니다. 예를 들어, DATETIME 자료형에서 시간을 제외하고 출력하려면 어떻게 해야 할까요?이 글을 참고하면 문제를 해결하기 위해 DATE_FORMAT을 사용하는 것을 볼 수 있습니다. 이제 DATE_FORMAT을 사용하는 다양한 방법을 알아봅시다.지시자설명%a요일 이름 축약형 (일..토)%b월 이름 축약형 (1월..12월)%c월 숫자형 (0..12)%D날짜에 영어 접미사 추가 (0th, 1st, 2nd 등)%d날짜 숫자형 (00..31)%e날짜 숫자형 (0..31)%f마이크로초 (000000..999999)%H시..

DB/MySQL 2024.11.19

[Redis] Redis란?

Key - Value 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터 베이스 관리 시스템이다.데이터베이스, 캐시, 메시지 브로커로 사용되는 인메모리 데이터 구조를 가진 저장소다.Redis의 특징?Key - Value 구조이기 때문에 쿼리를 사용하지 않는다.데이터를 디스크에 쓰는 구조가 아니라 메모리에서 처리되기 때문에 속도가 빠르다쓰기 성능 증대를 위한 클라이언트 측 샤딩 지원String, Lists, Sets, Sorted Sets, Hashes 자료 구조를 지원한다Single Thread다. 즉, 한번에 하나의 명령만 처리할 수 있다. 다만 중간에 처리 시간이 긴 명령이 들어오게 된다면 뒤 명령어들이 지연될 수 있다.AOF, RDB 방식을 통해 백업 기능 제공AOF(A..

DB/Redis 2024.09.03

[Querydsl] Querydsl이란?

QueryDsl은 Java에서 관계형 데이터베이스를 쿼리하기 위한 타입 안전한 API를 제공하는 프레임워크이다. SQL과 매우 유사한 구문을 사용하여 복잡한 데이터베이스 쿼리를 보다 쉽게 작성하고 구성할 수 있다.장점쿼리를 자바 코드로 작성하여 문법 오류를 컴파일 시점에 잡음동적 쿼리 문제 해결쉬운 SQL 스타일 문법인텔리제이와 같은 IDE의 자동 완성 기능여기서 말하는 컴파일 시점이란? 프로그램이 실행되어 동작중인 상태(런타임)이 아닌 프로그램을 빌드하는 시점을 말한다.그럼 Querydsl은 무조건 좋다!!! 꼭 쓰자!! 현업에서도 많이 쓴다더라!! 인 것일까??아니다. Querydsl은 1차 캐시를 이용하지 않고 바로 DB를 바라보기 때문에 예상치 못한 응답이 발생하거나, 네트워크 통신이 느린 경우 ..

DB/Querydsl 2024.09.02

[Querydsl] Querydsl 적용 방법

implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api"spring 3.x 버전부터는 다음과 같이 build.gradle에 추가해주면 된다.의존성을 추가해주면 하단 사진과 같은 Q객체들이 생성된다.사용 방식은 대표적으로 두가지이다.1. Custom 인터페이스를 만들어 사용하는 방식public interfac..

DB/Querydsl 2024.09.02