본문 바로가기

분류 전체보기317

[MySQL] 데이터 가져오기 not equal, not like, in, not in 📝MySQL Workbench 데이터 가져오기 ~가 아닌 것을 가져오는 not equal ~를 포함하지 않은 것을 가져오는 not like ~가 들어있는 것을 가져오는 in ~가 들어있지 않은 것을 가져오는 not in ~가 아닌 것을 가져오는 not equal ( =! ) -- 출간년도가 2017년도가 아닌 데이터를 가져오기 select * from books where released_year != '2017'; -- 작가의 author_lname이 'Harris'가 아닌 데이터에서 책제목과 페이지수를 가져오기 select title, pages from books where author_lname != 'Harris'; ~를 포함하지 않은 것을 가져오는 not like -- 책 제목에 W가 포함되지.. 2022. 12. 7.
[MySQL] 테이블 Datatype TIMESTAMP 📝MySQL Workbench 테이블 Datatype TIMESTAMP 데이터타입을 timestamp으로 지정하고 디폴트값을 now()로 입력하면 데이터를 저장할때 해당 값을 입력하지 않아도 데이터를 입력한 시간으로 자동 저장된다 (테이블 Apply하면 CURRENT_TIMESTAMP으로 자동 변환된다) 데이터타입을 timestamp으로 지정하고 디폴트값을 now()로 입력하고 on update now()를 추가 입력해주면 해당 컬럼에 데이터를 변경(수정)할때 시간이 업데이트 되서 저장된다 (테이블 Apply하면 CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP으로 자동 변환된다) 2022. 12. 7.
[MySQL] 날짜와 시간 처리하기 📝MySQL Workbench 날짜와 시간 처리하기 데이터에서 일, 월, 요일, 시간 등 정보 가져오기 -- 일 정보 가져오기 select name, day(birthdate) from people2; select name, dayofmonth(birthdate) from people2; -- 요일 정보 가져오기(Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday) select name, dayname(birthdate) from people2; -- 숫자로 요일 정보 가져오기(1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thursday, 6=Friday, 7=Saturday) select name, dayofweek.. 2022. 12. 7.
[MySQL] 서브쿼리 Sub Query 사용하기 📝MySQL Workbench Sub Query 사용하기 하나의 SQL문 안에 포함되어 있는 또 다른 SQL문 Sub Query (= 쿼리 내부에 포함되어 있는 SELETE 문) ※ 서브쿼리는 메인쿼리의 컬럼을 사용 가능 / 메인쿼리는 서브쿼리의 컬럼 사용 불가능 -- 페이지수가 가장 긴 책의 제목은? -- 잘못된 SQL select title, max(pages) from books ; -- max값 구해서 sub query 하기 select * from books where pages = (select max(pages) from books); -- 재고가 가장 적은 책의 책이름과 작가의 fname, lname를 가져오기 select title, author_fname, author_lname fro.. 2022. 12. 7.
[MySQL] 데이터 그룹하여 처리하기 group by 📝MySQL Workbench 데이터 그룹하기 group by 데이터를 집계하는 group by 키워드 ※ 유형별로 갯수를 알고 싶을 때 컬럼에 데이터를 그룹화시켜 사용 null값이 없는 컬럼에 사용 -- author_lname별로 몇권의 책을 썼는지 작가 이름과 책권수를 가져오기 select concat(author_fname, ' ', author_lname) as full_name, count(title) as count from books group by author_lname ; -- author_lname과 author_fname 별로 그 작가의 이름과 출간년도의 최소값을 가져오기 -- (각 작가별로 최초 책 발간한 년도가 언제인가) select min(released_year), concat.. 2022. 12. 7.
[MySQL] 데이터 집계함수 count, sum, avg, max, min 📝MySQL Workbench 데이터 집계함수 갯수를 세는 함수 count() 값을 모두 더해주는 함수 sum() 평균을 구하는 함수 avg() 최대값을 구하는 함수 max() 최소값을 구하는 함수 min() 갯수를 세는 함수 count() -- books 테이블의 데이터 갯수는 ? select count(*) from books ; -- author_lname의 유니크한 데이터의 갯수는 ? select count(distinct author_lname) from books ; -- 책 제목에 the가 들어간 책은 몇권 ? select count(*) from books where title like '%the%' ; 값을 모두 더해주는 함수 sum() -- books 테이블의 모든 책 페이지수를 다 더.. 2022. 12. 7.
[MySQL] 데이터를 가공하는 키워드 distinct, order by, limit, like 📝MySQL Workbench 데이터 가공 데이터를 유니크하게 만드는(중복제거) distinct 데이터를 정렬하는 order by 데이터를 끊어서 가져오는 limit 와 offset 문자열 안에 원하는 문자가 들어있는지 검색하는 like 데이터를 유니크하게 만드는(중복제거) distinct -- author_lname은 카테고리컬 데이터다 유니크한 데이터를 확인하기 select distinct author_lname from books; -- 작가의 퍼스트네임과 라스트네임을 합친 full name으로 유니크하게 확인하기 select distinct concat(author_fname, ' ', author_lname) as 'full name' from books; 데이터를 정렬하는 order by ※ .. 2022. 12. 7.
[MySQL] 문자열 컬럼의 데이터를 가공하는 함수들 concat(), substring(), replace(), reverse(), char_length(), upper(), lower() 📝MySQL Workbench 문자열 컬럼의 데이터를 가공하는 함수들 문자열을 합치는 concat() + 여러 문자열 컬럼을 합칠때 그 사이를 첫번째 입력한 파라미터로 합치는 concat_ws() 문자열의 일부분만 가져오는 substring() 문자열의 내용을 바꾸는 replace() 문자열의 순서를 역순으로 바꿔주는 reverse() 문자열의 갯수(길이)를 구하는 char_length() 문자열의 대소문자 처리하는 upper(), lower() 문자열을 합치는 함수 concat() ※ 공백이나 다른 문자열을 포함시킬 수 있다 -- author_fname 과 author_lname 컬러의 값을 합해서 full_name 이라고 보여주기 select concat(author_fname, ' ', author.. 2022. 12. 6.
[MySQL] 테이블 데이터 CRUD(Create, Read, Update, Delete) 📝MySQL Workbench 테이블 데이터 CRUD Create > insert into Read > select Update > update Delete > delete Create > insert into (데이터 추가) → 데이터 추가 insert into cats (name, breed, age) values ('Ringo', 'Tabby', 4), ('Cindy', 'Maine Coon', 10), ('Dumbledore', 'Maine Coon', 11), ('Egg', 'Persian', 4), ('Misty', 'Tabby', 13), ('George Michael', 'Ragdoll', 9), ('Jackson', 'Sphynx', 7); Read > select (데이터 가져오기) →.. 2022. 12. 6.
[MySQL] id 컬럼 만들기 📝MySQL Workbench id 컬럼 만들기 id컬럼을 만들때 PK(Primary Key), NN(Not Null), UN(Unsigned), AI(Auto Increment) 체크해서 생성하면 id가 1(양수)부터 순서대로 증가해 자동으로 입력된다 ※ Primary Key는 Not Null과 Uniqe 조건의 특징을 모두 가진다 (Null값을 가질 수 없으며 중복된 값을 가져서도 안됨) 원래 있던 데이터를 삭제하고 새로 추가하면 id숫자는 1부터 시작하는게 아니라 원래 있던 id값 이후의 숫자로 시작한다 2022. 12. 6.