본문 바로가기

MySQL

(29)
MySQL의 LIKE와 문자열 컬럼에 FULLTEXT 설정 SQL의 LIKELIKE 연산자는 문자열 패턴 매칭을 위해 사용된다. 와일드카드 %와 _를 사용하여 패턴을 지정할 수 있다.문자열 컬럼에 FULLTEXT 설정FULLTEXT 인덱스는 텍스트 검색을 빠르고 효율적으로 수행할 수 있게 해준더. 일반적으로 큰 텍스트나 문서의 내용을 검색할 때 사용된다.like 를 이용해서 검색을 할 경우 많은 데이터를 읽어오는데 시간이 걸리기 때문에  그 컬럼을 fulltext로 index에서 설정해줘야 빠르게 검색 할 수 있다. 이렇게 아래 화면처럼 Indexes에서 Type을 FULLTEXT로 하고 빠르게 검색하고자 하는 컬럼을 선택해주면 된다.
MySQL 테이블의 unique 설정, Error Code: 1062. Duplicate entry 가 나오는 이유 데이터베이스에서 특정 열의 값이 중복되지 않도록 하려면 UNIQUE 제약 조건을 설정할 수 있다. UNIQUE 제약 조건을 사용하면 해당 열에 중복된 값이 삽입되는 것을 방지할 수 있다.Error Code: 1062. Duplicate entry 오류는 데이터베이스에 중복된 값이 삽입되었을 때 발생한다. 이는 주로 PRIMARY KEY나 UNIQUE 제약 조건을 위반했을 때 발생한다.해결 방법중복된 값을 피하기 위해 삽입 전에 해당 값이 이미 존재하는지 확인한다.중복 허용이 필요한 경우, UNIQUE 제약 조건을 제거하거나 중복 삽입을 허용하는 로직을 구현한다.
MySQL join을 활용하여 테이블 합치기(left,right) 두개의 테이블이 있다.select * from customers;                                                                       select *from orders;이 두 테이블을 합쳐보려한다..이 쿼리는 orders 테이블과 customers 테이블을 고객의 ID (customer_id)를 기준으로 INNER JOIN하여 두 테이블의 정보를 합친다. 이를 통해 주문 정보와 해당 주문을 한 고객의 정보를 함께 조회할 수 있다.JOIN은 두 개 이상의 테이블에서 데이터를 가져와서 연관된 열(column)을 기준으로 행(row)을 결합하는데 사용된다. JOIN을 사용하면 여러 테이블의 데이터를 결합하여 새로운 결과 세트를 생성할 수 있다.ON 절..
MySQL 여러 테이블 생성시,foreign key 키 설정하는 방법 MySQL 테이블 생성 및 FOREIGN KEY 설정하기\MySQL에서 여러 테이블을 생성하고 FOREIGN KEY를 설정하는 것은 데이터베이스 관리에서 중요한 부분입니다. 아래는 예제 테이블 생성과 FOREIGN KEY 설정에 대한 간단한 가이드입니다. 먼저 orders 의 customer_id를 만들어 연결시키기 위해 id 값을 부여합니다. UN(unsigned)를 체크함으로써 음수로 나타낼 수 없도록 합니다.테이블 간 관계를 설정하기 위해 FOREIGN KEY를 추가합니다. "orders" 테이블의 "customer_id" 컬럼은 "customers" 테이블의 "id" 컬럼을 참조하도록 설정합니다join 했을 때 잘 나오는 것을 볼 수 있습니다.(join에 대한건 다음 블로그 게시글에서 설명하겠습니..
MySQL 글 작성 시의 현재시간,업데이트시간 나타내는 방법 먼저 테이블을 새로 만들고 아래 화면저럼 각 컬럼명과 Datetype을 정해줍니다.그다음 중요한것은Default/Expression 부분을 수정하는 것입니다. CURRENT_TIMESTAMP를 createdAt의 Default값으로 적어줍니다.CURRENT_TIMESTAMP: CURRENT_TIMESTAMP는 MySQL에서 현재 날짜와 시간을 나타내는 함수입니다. 이 함수를 사용하면 현재 시스템의 날짜와 시간을 가져와서 데이터베이스에 저장하거나 비교하는 등의 작업을 할 수 있습니다.CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP:updatedAt 컬럼의 Default 값에 작성CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP는 MySQL에..
MySQL 시간 차이를 구하는 방법 datediff(),date_add(),date_sub() 이 테이블을 가지고 시간 차이를 구해보도록 하겠습니다.시간의 차이를 구하는 방법 : datediff() 함수현재시간과 birthdt시간의 차이를 구합니다. 현재시간 - 태어난시간1)태어난 시간으로부터 100일 후의 날짜는?                                   2) 태어난 시간으로부터 100일 전의 날짜는?  3)태어난 시간으로부터 5주 후의 날짜는?                                     4) 태어난 시간으로부터 72시간 후의 날짜는?태어난 시간으로부터 72시간 후의 날짜 또다른 표현    태어난 시간으로부터 72시간 전의 날짜 또다른 표현
MySQL 현재시간,년원일,시분초 구하는 함수now(),curdate(),curtime() 이번에도 이 테이블을 가지고 현재시간,년원일,시분초를 구하는 함수를 사용해보록 하겠습니다.1) 현재시간을 구하는 함수:now()           2)현재 년원일 구하는 함수:curdate()    3) 현재 시분 구하는 함수 :curtime()
MySQL 날짜와 시간을 처리하는 방법 MySQL 날짜와 시간을 처리하는 방법MySQL에서는 DATETIME, DATE, TIME 등의 데이터 타입을 사용하여 날짜와 시간을 저장하고 처리할 수 있습니다. DATETIME은 날짜와 시간을 모두 저장할 수 있는 가장 일반적인 형식이며, DATE는 날짜만, TIME은 시간만 저장합니다. 먼저 datetime 테이블을 새로 만들어 줍니다.그리고 만든 컬럼에 각각 데이터를 아래 사진처럼 넣어주면이러한 결과물이 나옵니다. 여기서 날짜를 처리해보도록 하겠습니다.1) 년월일에서 날짜만 가져올때                2) 월만 가져올때                                        3) 년도만 가져올 때4) 요일을 문자로 가져올 때                            ..