반응형

2024/05 112

MySQL Workbench : 3개 이상의 테이블을 조인하는 방법

# 학습전 3가지의 테이블을 만들고 데이터를 삽입INSERT INTO series (title, released_year, genre) VALUES ('Archer', 2009, 'Animation'), ('Arrested Development', 2003, 'Comedy'), ("Bob's Burgers", 2011, 'Animation'), ('Bojack Horseman', 2014, 'Animation'), ("Breaking Bad", 2008, 'Drama'), ('Curb Your Enthusiasm', 2000, 'Comedy'), ("Fargo", 2014, 'Drama'), ('Freaks and Geeks', 1999, 'Comedy'), ('Gener..

MySQL Workbench : join과 left join 하는 방법과 예시

- 학습을 위해서 DB와 테이블은 이전에 만든 형식을 가져와서 사용- 참고 : https://sorktjrrb.tistory.com/123 MySQL Workbench : 데이터 정규화를 위한 foreign key 설정 방법# 외래 키(Foreign Key)의 역할- 외래 키는 한 테이블의 열이 다른 테이블의 기본 키(Primary Key)를 참조하게 하는 제약 조건입니다. 외래 키는 다음과 같은 이점을 제공합니다:데이터 무결성 유지:외래sorktjrrb.tistory.com # customers 테이블과 orders 테이블에 각각 데이터를 넣어준다.   # 이제 두개의 테이블을 합쳐서 가져오는 방법 join-- 데이터 정규화를 위해 테이블을 두개로 나누어서 fk 설정 및 데이터까지 입력하였다.-- 두개..

MySQL Workbench : 데이터 정규화를 위한 foreign key 설정 방법

# 외래 키(Foreign Key)의 역할- 외래 키는 한 테이블의 열이 다른 테이블의 기본 키(Primary Key)를 참조하게 하는 제약 조건입니다. 외래 키는 다음과 같은 이점을 제공합니다:데이터 무결성 유지:외래 키는 참조 무결성을 보장하여, 참조되는 값이 항상 존재하도록 합니다.예를 들어, comments 테이블의 user_id가 users 테이블의 id를 참조하는 경우, user_id 값은 반드시 users 테이블에 존재하는 id 값이어야 합니다.데이터베이스 관계 명확화:외래 키는 데이터베이스 설계에서 테이블 간의 관계를 명확하게 정의합니다.이를 통해 데이터 모델을 더 잘 이해하고 관리할 수 있습니다.데이터 삭제 및 업데이트 규칙 설정:외래 키를 사용하면 부모 테이블에서 행이 삭제되거나 업데이..

MySQL Workbench : 실시간 날짜 데이터 적용 TIMESTAMP (now() on update now())

- 학습을 위해 TIMESTAMP 라는 Datatype이 포함된 테이블을 새로 생성 # 새로운 데이터를 넣어보는데 TIMESTAMP로 생성한 createdAt 컬럼에는 now() 함수로 값을 넣어주자.insert into comment(content, createdAt)values('좋아요' , now() );insert into comment(content, createdAt)values('맛없어요' , now() );select *from comment;ㄴ 이러면 작성한 시간을 기준으로 현재 시간이 자동으로 입력된다. # 이제 테이블 수정 화면에서 createdAt 컬럼의 default 값에 now() 함수를 입력하고 applyㄴ default 값이 자동으로 'CURRENT_TIMESTAMP' 로 변..

MySQL Workbench : 날짜 데이터 관련 함수들 (now())과 부등호를 활용한 시간 차이 구하기 (interval)

- 학습을 위해 이전에 만든 DB와 테이블을 사용- 참고 : https://sorktjrrb.tistory.com/120 MySQL Workbench : 날짜 데이터를 저장하는 데이터타입 (DATE, TIME, DATETIME)- 날짜 데이터 학습을 위해 새로운 테이블 생성ㄴ Datatype이 중요함 # yhdb로 db 사용어 입력하고 테이블에 새로운 데이터 입력use yhdb;insert into people(name, birthdate, birthtime, birthdt)values( 'Mike', '1990-11-11'sorktjrrb.tistory.com # 중요한 개념! 현재 시간을 실시간으로 적용해주는 now() 함수!-- 현재 시간을 구하는 방법 now() 함수select now(); # 이..

MySQL Workbench : 날짜 데이터를 저장하는 데이터타입 (DATE, TIME, DATETIME)

- 날짜 데이터 학습을 위해 새로운 테이블 생성ㄴ Datatype이 중요함 # yhdb로 db 사용어 입력하고 테이블에 새로운 데이터 입력use yhdb;insert into people(name, birthdate, birthtime, birthdt)values( 'Mike', '1990-11-11', '10:07:35', '1990-11-11 10:07:35'),( 'Larry', '1980-12-25', '04:10:42', '1980-12-25 04:10:42'); # 데이터 타입이 DATE 일때만 사용가능한 함수-- 년월일에서 날짜만 가져올때 day() 함수select name, day(birthdate)from people; -- 월정보만 가져올때 month() 함수select name, mo..

MySQL Workbench : group by 해서 만들어진 컬럼을 이용해서, case 문 만들때 조심해야할 사항 (컬럼 이름 사용법 설명)

# 이전 생성한 스키마(DB)와 테이블로 이어서 진행# 참고 : https://sorktjrrb.tistory.com/105 MySQL Workbench : 문자열 처리 함수들 (concat, concat_ws, substring)# 문자열 처리 함수 학습을 위해 books 라는 새로운 테이블 생성ㄴ 혹시 테이블을 수정하고 싶으면 좌측 목록에서 체크된 아이콘을 누르면 수정 가능! # yhdb 를 사용하였으므로, 해당 db 사용 문구sorktjrrb.tistory.com # case 혹은 if등 조건문은 select와 같은 행에 작성을 해주어야 한다.# groub by 뒤에 having을 사용할때는 select 문 이후에 작성하는것이기 때문에 select 문에서 as 로 변경한 컬럼명을 사용할수 있지만,#..

728x90
반응형