데이터베이스8 SQL의 like와 문자열 컬럼에 fulltext 설정 SQL의 like와 문자열 컬럼에 fulltext 설정 1 2 3 4 5 6 select title, count(r.movie_id), ifnull(avg(r.rating),0) from movie m left join review r on m.id = r.movie_id where m.title like '%mon%' group by r.movie_id; Colored by Color Scripter cs SQL 문에서 특정 문자열을 찾는 'like' 는 해당 문자열을 하나씩 찾아 내려가기 때문에 데이터가 적을때는 괜찮지만, 엄청난 양의 데이터가 있을때는 많이 늦어집니다. 이때, Indexes에서 해당 컬럼을 타입을 'FULL TEXT'로 설정하고, 인덱스 컬럼즈에 'title'로 해주면 빠르게 찾을수.. 2022. 5. 18. Error Code: 1062.Duplicate enty 가 나오는 이유 Error Code: 1062.Duplicate enty 가 나오는 이유 MySQL에서 데이터를 저장하는데 Error Code: 1062.Duplicate enty 에러가 나는 이유는! 1 2 3 4 5 6 7 8 9 insert into user (email, password, name, gender) values ('qqq@gmail.com', '1234', 'Mike', 1); insert into user (email, password, name, gender) values ('qqq@gmail.com', '234542a', 'Seri', 1); cs 테이블을 생성할때 특정 컬럼을 'UNIQUE'로 설정했는데 그 특정 컬럼에 들어갈 데이터가 중복될때 알려주는 메세지 입니다. 위에서는 컬럼 emai.. 2022. 5. 18. MySQL 페이징(paging)에 사용되는 limit 와 offset MySQL 페이징(paging)에 사용되는 limit 와 offset 페이징(paging)는 게시판을 짤때 꼭 들어가는 부분인데요. Mysql에서는 limit와 offset로 할수가 있습니다. 참고할 기본 테이블 a. 책 테이블을 3개만 가져오세요. 1 2 select * from books limit 3; -- 맨 위에서부터 가져온다. cs b-1. 최신책을 기준으로 3개만 가져오세요. b-2. 최신책을 기본으로 원하는 위치에서부터 3개만 가져오세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 -- 최신책을 기준으로 3개만 가져오시오. select * from books order by released_year desc limit 3; -- 최신책을 기본으로 원하는 위치 0 에서부터 3개만 .. 2022. 5. 16. MySQL 정렬하기 위한 order by MySQL 정렬하기 위한 order by 참고할 기본 테이블!! order by 정렬할 컬럼명 정렬옵션(asc 또는 desc) order by는 데이터를 정렬할때 쓰입니다. 오름차순 정렬 asc, 디폴트 내림차순 정렬 desc (order by 오른쪽에는 정렬할 컬럼명, order by는 sql문 맨 마지막에 씁니다.) a. 책 제목을 정렬하세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 -- 책 제목으로 정렬하세요. -- 오름차순 asc, 디폴트로 생략 가능 select * from books order by title; select * from books order by title asc; -- 내림차순 desc select * from books order by title desc; c.. 2022. 5. 16. MySQL 데이터 중복제거 distinct MySQL 데이터 중복제거 distinct 참고할 기본 데이터 distinct 컬럼명 중복없는 유니크한 데이터 가져오는 가져옵니다. a. author_lname 의 이름을 중복없이 가져오세요. 1 2 3 4 5 6 select author_fname from books; -- 중복을 제거할대 사용 select distinct author_fname from books; cs b. 작가의 full name을 중복없이 가져오세요. 1 2 select distinct( concat( author_fname, ' ', author_lname ) ) from books; Colored by Color Scripter cs 2022. 5. 16. MySQL 테이블에 데이터 insert 하기 a. 하나저장, 여러개 저장, Not Null, Default MySQL 테이블에 데이터 insert 하기 a. 하나저장, 여러개 저장, Not Null, Default 데이터 생성 Insert use yh_db; 항상 상단에는 ~db를 사용하겠다는 명령러를 써줍니다. 그리고 코드작성 마지막에는 꼭 클론( ; )을 붙여줍니다. insert into '테이블이름' 컬럼이름 values 데이터; a. 하나의 데이터 입력(저장) ex) insert into people first_name values 'Tina'; b. 여러 데이터 입력(저장) ex) insert into people (first_name, last_name, age) values ('Tina', 'Belcher', 13) MySQL에서는 코드작성 끝을 클론( ; )으로 구분을 하기 때문에 줄바꿈으로 가.. 2022. 5. 13. MySQL Workbench를 이용해서 테이블 생성하기 a. PK, NN, AI, UN MySQL Workbench를 이용해서 테이블 생성하기 a. PK, NN, AI, UN 1. DB 생성 테이블 생성하기 앞서 먼저 사용할 DB를 만들어 줍니다. 상단에 원통 모양을 누르면 만들수 있는 창이 뜨는데요. 사용할 DB명을 입력하고 하단의 [Apply] 를 클릭합니다. 자동으로 소스코드가 입력되고, [Apply] - [Finsh] 를 클릭합니다. 2. 테이블 생성 왼쪽에 생성한 DB에서 삼각형을 누르면 아래 Tables, Views ... Fuctions가 뜹니다. [Tables] - [Create Table]을 클릭! Table Name : 테이블명 Column Name : 맨위 컬럼명 Datatype은 콤보박스를 클릭하면 설정할수 있습니다. 숫자 정수형 : INT 글자의 최대갯수 : VARC.. 2022. 5. 13. MySQL Workbench를 통해 AWS RDS에 접속환경 설정하는 방법 MySQL Workbench를 통해 AWS RDS에 접속환경 설정하는 방법 먼저 AWS 사이트에 접속해 내 데이터베이스 정보를 확인합니다. 이때, 보안부분에서 VPC 보안그룹은 꼭! 활성화가 되어 있어야 합니다. Connention Name : DB 이름 Hostname : 엔드포인트 Username / Port : 관리자 아이디 (포트 3306) Password : 관리자 비밀번호 AWS 사이트에서 확인한 데이터이스의 중요 정보들을 입력해 줍니다. 설정이 끝나면 연결하기 전에 하단 [Test Connention] 을 클릭해 제대로 되는지 확인합니다. 이렇게 뜬다면 접속 설정 완료! 2022. 5. 13. 이전 1 다음