괴발개발 성장기
728x90
반응형

Study/Mysql 19

[MySQL] DB 용량 체크하는 쿼리

# 배경 입사 초기에 어떤 테이블마다 사이즈가 얼마나 되는지 알아보는 시간을 가졌다. # 문법 SELECT TABLE_NAME AS `Table`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)` FROM information_schema.TABLES WHERE TABLE_SCHEMA = "스키마이름" AND TABLE_NAME = "테이블명" ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC; # 예시 SELECT TABLE_NAME AS `Table`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)` FROM information_sche..

Study/Mysql 2023.08.08

[MySQL] 조인 해서 업데이트 시키기

# 배경 기부, 기부상태, 기부영수증 3개의 테이블을 조인해서 기부날짜 보고 기부영수증 상태 업데이트 하기 # donations 테이블 id member_id donation_date status deleted_at 회원아이디 기부날짜 기부상태 # statuses 테이블 id status receipt_available 기부상태 기부영수증가능 # donor_receipts 테이블 donation_id status 기부영수증상태 # 문법 update [테이블명1] a inner join [테이블명2] b on a.[조인된컬럼] = b.[조인된컬럼] set b.[컬럼명] = 변경할값 WHERE 조건; # 예시 UPDATE donor_receipts INNER JOIN donations on donor_rec..

Study/Mysql 2023.08.03

[MySQL] update 할 때 나오는 에러 메시지

MySQL Workbench에서 업데이트 할 때 조건이 없으면 데이트를 보호하기 위해서 에러가 난다. # 에러 메시지 You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect # 해결방법 1) Update 문 전에 아래 코드를 실행한다. set sql_safe_updates=0; update members set name ='지니'; 2) update문에 조건을 넣는다 update members set name ='지니' where ..

Study/Mysql 2023.07.05

[MySQL] 테이블 복제하는 방법

# 배경 로컬에서 DB를 재설계하기 위해서 원본을 복제해놨다. # 문법 CREATE TABLE IF NOT EXISTS 복사 테이블 SELECT * FROM 원본 테이블; # 예시 CREATE TABLE IF NOT EXISTS banners_copy SELECT * FROM banners; 전체 복제가 되었다. 그래서 컬럼 변경을 해서 테스트를 해봤다. 만약에 상태를 위해서 복제를 해 놓은 것이다. # 추가 내용 (2023.08.10) id 컬럼에 Primary key, Auto Increment 설정들이 사라졌다. 복제할 때 속성들은 복사가 안되고 구조와 데이터들만 복사가 된다는 사실을 알게 되었다.

Study/Mysql 2023.07.04

[MySQL] 문자열 자르기

# 테이블명 deliveries # 컬럼명 sender_address 부산 부산진구 범천동 경기도 용인시 수지구 서울특별시 중구 소공로 # 구분자로 문자열로 자르기 # 문법 SUBSTRING_INDEX(컬럼명, 구분자, 구분자인덱스) # 예시 select SUBSTRING_INDEX(sender_address, ' ', 2) from deliveries # 결과 sender_address 부산 부산진구 경기도 용인시 서울특별시 중구 # 앞부분만 자르기 # 문법 SUBSTRING(컬럼명, 시작위치) - 1부터 시작이다. # 예시 select SUBSTRING(sender_address, 2) from deliveries ; # 결과 sender_address 산 부산진구 범천동 기도 용인시 수지구 울특별시..

Study/Mysql 2023.06.29

[MySQL] 컬럼 추가 및 컬럼 순서 지정하기

# 배경 type이라는 컬럼을 추가 하고 싶었다. 그리고 맨 뒤가 아니라 A 컬럼 옆에 넣고 싶었다. # 문법 원하는 컬럼명 옆에 놓고 싶을 때 ALTER TABLE [테이블명] ADD [추가할 컬럼명] [자료형] AFTER [앞컬럼명]; 컬럼 맨 앞에 추가 하고 싶을 때 ALTER TABLE [테이블명] ADD [추가할 컬럼명] [자료형] FIRST; # 예시 ALTER TABLE goods ADD type varchar(10) AFTER A;

Study/Mysql 2022.11.01
728x90
반응형