Database: 227개의 글
■ MariaDB 다운로드 MairaDB 설치 프로그램은 여기 MariaDB 사이트에서 다운로드 받을 수 있습니다. 다운로드 페이지에 가면 현재 다음과 같은 페이지 창이 나타납니다. 아래 최신 stable 버전을 클릭합니다. (현재 10.4) 만약 최신 버전이 아닌 그 이전 버전의 MariaDB 서버를 내려받으려면 우측 "View All MariaDB"를 클릭하면 됩니다. 이 버튼을 클릭하면 메인 버전의 예전 release 버전을 목록으로 표시해줍니다. ■ windows windows 운영체제의 비트 버전에 맞게 해당 다운로드 패키지를 클릭합니다. 참고로 winx32는 32비트 운영체제, winx64는 64비트 운영체제입니다. 여기서는 msi 패키지를 다운로드 쉽게 설치를 진행하는 방법을 알아보겠습니다...
■ MariaDB란? MariaDB는 MariaDB사가 제작한 오픈소스 RDMBS 소프트웨어입니다. MariaDB가 무엇인지 알기위해서는 MySQL이란 유명 RDBMS를 알아야합니다. 왜냐하면 MySQL에서 떨어져나온 RDBMS가 MariaDB이기 때문이죠. MySQL은 AB사에서 제작했던 소프트웨어 입니다. 썬 마이크로시스템스에서 당시 10억 달러, 우리나라 돈 1조 가량에 인수했다가 양복기업의 대표주자 오라클이 썬 마이크로 시스템스를 2010년에 72억 달러 8조 ㅎㄷㄷ 에 인수해가면서 오라클 것이 되었죠. 오라클은 MySQL을 인수하면서 상업적으로 MySQL을 이용할 시 사용료를 내도록 정책을 바꾸어 버렸습니다ㅠㅠ 그러나 오라클의 정책에 반발한 AB사에서 핵심 창업자중 한 명이었던 몬티 와이드니어스..
MySQL 에서 JOIN에 대해 알아보도록 하겠습니다. 0. JOIN 개요 SQL JOIN 이라고 검색하면 나오는 유명한(?) 그림 입니다. 일단 이 그림만 보아도 JOIN에 대한 개념을 어느정도 잡을 수 있습니다. 1. 테스트할 데이터 준비 CREATE TABLE IF NOT EXISTS `member` ( `idx` int(11) NOT NULL AUTO_INCREMENT, `email` varchar(50) NOT NULL, `username` varchar(50) NOT NULL, PRIMARY KEY (`idx`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; INSERT INTO `member` (`idx`, `email`, `username..
MySQL에서 도메인에 값들의 갯수를 세어야 할 때가 있습니다. 그럴 때 사용할 수 있는 것이 SUM과 IF의 조합입니다. 1. 테스트할 데이터 준비 CREATE TABLE IF NOT EXISTS `count_test` ( `id` int(11) NOT NULL, `state` enum('Y','N') NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `count_test` (`id`, `state`) VALUES (1, 'Y'), (2, 'Y'), (3, 'Y'), (4, 'Y'), (5, 'N'), (6, 'Y'), (7, 'N'), (8, 'Y'), (9, 'Y'), (10, 'N'); 2. 갯수 세기(SU..
스키마를 엑셀에 문서화 하고 싶을 때 다음과 같이 쿼리를 생성하여 csv 혹은 엑셀로 export하여 사용하면 된다. SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, CONCAT(DATA_TYPE,'(',IFNULL(CHARACTER_MAXIMUM_LENGTH,IFNULL(NUMERIC_PRECISION,'')),')') TYPE, COLUMN_KEY, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA NOT IN ('information_schema', 'performance_schema', 'mysql', 'isb_stg', 'isb_prd') ORDER BY TABLE_SCHEMA, TABLE_NAME,..
datetime 필드에서 날짜 혹은 시간만 SELECT 하려면 다음과 같이 하면 된다. SELECT DATE_FORMAT("2016-04-08 11:12:14", '%Y-%m-%d') DATEONLY, DATE_FORMAT("2016-04-08 11:12:14",'%H:%i:%s') TIMEONLY
날짜 별로 행의 갯수를 세야 할 때 다음과 같이 쿼리를 작성하면 된다. SELECT DATE_FORMAT(날짜 필드, '%Y%m%d') AS date, count(*) AS cnt FROM 테이블 이름 GROUP BY DATE_FORMAT(날짜 필드, '%Y%m%d') ORDER BY date DESC;
특정 필드가 업데이트 될 때 트리거를 작동하게 해야 할 때가 있다. 그럴 때는 다음과 같이 트리거를 생성하면 된다. CREATE TRIGGER tg_my_trigger AFTER UPDATE ON tbl_my_table FOR EACH ROW BEGIN if NEW.column1 OLD.column1 begin --작성 end END
MySQL 에서 문자를 검색할 때 대소문자를 구분해야할 때가 있다. 그럴때 다음과 같이 하면 된다. SELECT your_field FROM your_table_name WHERE BINARY(your_field) LIKE "%your search word%"
1. 테스트할 테이블 생성 코드 CREATE TABLE `tbl_condition_test` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `col1` INT(10) UNSIGNED NULL DEFAULT NULL, `col2` INT(10) UNSIGNED NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COLLATE='utf8_general_ci' ENGINE=MyISAM 2. 샘플 데이터 삽입 코드 INSERT INTO `test` (`id`, `col1`, `col2`) VALUES (1, NULL, 11); INSERT INTO `test` (`id`, `col1`, `col2`) VALUES (2, 2, 12); INSERT IN..