개발자

ALL

MySQL 날짜 변환 DATE_FORMAT 함수 사용 방법

DATE_FORMAT 함수를 사용하면 날짜를 지정한 포맷으로 변경할 수 있습니다.날짜 포맷을 변경하는 이유는 SELECT로 데이터를 검색하는 경우 조건 대상이 date 타입의 컬럼이라면날짜 포맷을 일치시켜주는 것이 정확한 검색 결과를 얻을 수 있습니다.또는 데이터를 등록하거나 변경하는 경우에도 값을 지정한 컬럼이 date 타입이라면 날짜 형태로 변경해값을 등록하는 것이 정확한 날짜 값으로 들어갑니다.DATE_FORMAT 사용 방법날짜 포맷을 변경해주는DATE_FORMAT함수 사용방법을 알아보겠습니다.DATE_FORMAT(date, ...
ALL

MySQL 형변환 CAST 함수 CONVERT 함수 사용 방법

CAST 함수 또는 CONVERT 함수를 사용하여 데이터 형변환을 할 수 있습니다.SELECT로 검색을 하는 경우 또는 INSET, UPDATE로 칼럼에 값을 넣어야 하는 경우 설정한 데이터 타입에 맞춰서 넣어줘야 하는 경우 형변환 함수를 사용합니다.CAST / CONVERT 함수 사용 방법CAST 함수를 사용하면 지정한 값을 다른 테이터 타입으로 변환할 수 있습니다.CAST(exprAStype)CONVERT 함수도 지정한 값을 다른 테이터 타입으로 변환하고 싶을 때 사용합니다.CONVERT(expr, type)expr에는 값을 지...
ALL

MySQL 테이블 사용 용량 확인 쿼리 DB 총용량 확인

MySQL 테이블 사용 용량 확인 방법입니다.자주 사용은 안해서인지 자주 잊어버려서 메모겸 남겨둡니다.DB 용량 확인SELECT     table_schema, sum(data_length) /1024/1024 AS mb FROM     information_schema.tables  GROUP BY     table_schema ORDER BY           sum(data_length+index_length) DESC; Table 사용 용량 확인SELECT      table_name, engine, table_rows AS...
ALL

MySQL 문자 결합(CONCAT,IFNULL) NULL 항목이 있는 경우 예제

CONCAT을 사용하여 문자 결합을 할때 결합 하는 값중 NULL이 있을경우 예상히 못한 결과를 얻는 경우도 있습니다.예를 들어 아래와 같은 테이블이 있다고 가정하겠습니다.테이블 이름은 test_table 이라고 정하겠습니다.id    col_a        col_b        col_c---------------------------------------------1 a     b            c2 a         b            NULL3 a         NULL         c테이블에는 col_a, co...
ALL

MySQL 실행한 SQL 쿼리 이력을 확인하는 방법

MySQL에서 실행했던 쿼리의 이력을 확인하는 방법입니다.실행중인 쿼리 확인mysql> show full processlist\G;실행 했던 쿼리 이력 확인mysql> select * from INFORMATION_SCHEMA.PROCESSLIST order by id desc limit 10\G;종류내용Id접속 식별자User쿼리를 실행한 유저Host쿼리를 실행한 호스트db데이터 베이스 명Command커맨드 종류Query, Connect, Sleep 등Time현재의 상태가 지속되고 있는 시간State커맨드 상태Info쿼리문로그파일에...
ALL

MySQL 자주 사용하는 문자열 함수

MySQL에서 쿼리를 작성하거나 프로시저를 사용할때 문자열에 관한 함수들을 많이 사용합니다.그 중에서도 문자열을 결합하거나, 문자열을 자르는 작업이 많습니다.문자열에 대해 많이 사용되는 함수들을 간단하게 살펴보겠습니다.CONCAT문자열 결합SELECT CONCAT('Ma', 'ria', 'DB'); -- 'MariaDB'SUBSTRING문자열을 지정한 위치에서 잘름앞에서 6번째 이후 문자열 취득SELECT SUBSTRING('Knowledgebase' FROM 5); -- 'edgebase'SELECT SUBSTRING('Knowl...
ALL

MySQL 인덱스 설정 방법과 실행 계획 확인 방법

데이터베이스에 테이블을 작성할때 인덱스를 적절하게 설정을 해줘야합니다.인덱스 설정을 안하거나 너무 많이 하는경우에는 데이터베이스 성능에 영향을 주게 됩니다.또는 데이터베이스가 있는 서버에 부하가 걸리기도 합니다.인덱스를 작성해줘야 하는 이유테이블 내 데이터양이 많고 조건 검색을 하는 경우.WHERE문 조건, 결합 조검, ORDER BY문을 이용하는 경우.NULL값이 많은 데이터로 부터 NULL이외의 값을 검색하는 경우.인덱스를 작성할 필요가 없는 경우테이블의 규모가 작고 테이블 전체를 표시하는 경우.열의 값이 자주 삽입, 갱신, 삭...
ALL

MySQL 기본키(PRIMARY KEY) 유니크키(UNIQUE KEY) 생서 및 추가 삭제 방법

테이블에 기본키 또는 유니크키를 작성하는 방법을 알아보겠습니다.기본키와 유니크키는 테이블을 생성할때 작성을할 수 있습니다.또는 테이블을 먼저 생성한 후에 기본키 또는 유니크키를 추가할 수 있습니다.테이블을 생성할때 작성하는 방법과 테이블 작성후에 추가하는 명령어는 다릅니다.두 방법을 모두 확인해보도록 하겠습니다.기본키(PRIMARY KEY)테이블 생성시CREATE TABLE table_name ( column1 int(11), column2 int(11), PRIMARY KEY (column1, column2))추가 하는 경우ALT...
ALL

MySQL 기본 명령어 자주 사용하는 커맨드 일람 정리

MySQL 기본 명령어 일람로그인・유저・패스워드로그인$ mysql -u -p로그 아웃mysql > \qmysql > quitmysql > exit유저 추가유저명:testuser패스워드:password호스트명:localhostmysql > create user `testuser`@`localhost` IDENTIFIED BY 'password';유저에 DB 조작 권한 부여대상:testuser@localhost대상 패스워드:password조작 가능한 DB :test_dbmysql > grant all privileges on test_...