MariaDB / 함수 / SUBSTRING, SUBSTRING_INDEX / 문자열 추출하는 함수

SUBSTRING

12345678의 5번째부터 끝까지 문자열을 추출합니다.

SELECT SUBSTRING( '12345678', 5 );
+----------------------------+
| SUBSTRING( '12345678', 5 ) |
+----------------------------+
| 5678                       |
+----------------------------+
SELECT SUBSTRING( '12345678' FROM 5 );
+--------------------------------+
| SUBSTRING( '12345678' FROM 5 ) |
+--------------------------------+
| 5678                           |
+--------------------------------+

12345678의 5번째부터 2개의 문자열을 추출합니다.

SELECT SUBSTRING( '12345678', 5, 2 );
+-------------------------------+
| SUBSTRING( '12345678', 5, 2 ) |
+-------------------------------+
| 56                            |
+-------------------------------+
SELECT SUBSTRING( '12345678' FROM 5 FOR 2 );
+--------------------------------------+
| SUBSTRING( '12345678' FROM 5 FOR 2 ) |
+--------------------------------------+
| 56                                   |
+--------------------------------------+

추출할 문자열의 개수가 모자르면 가능한만큼만 추출합니다.

SELECT SUBSTRING( '12345678', 5, 10 );
+--------------------------------+
| SUBSTRING( '12345678', 5, 10 ) |
+--------------------------------+
| 5678                           |
+--------------------------------+

SUBSTRING_INDEX

SUBSTRING_INDEX( string, delimiter, count )

12.34.56.78을 .으로 구분하면 4개의 문자열이 나오는데, 그 중 앞에서 3개를 추출합니다.

MariaDB [(none)]> SELECT SUBSTRING_INDEX( '12.34.56.78', '.', 3 );
+------------------------------------------+
| SUBSTRING_INDEX( '12.34.56.78', '.', 3 ) |
+------------------------------------------+
| 12.34.56                                 |
+------------------------------------------+

음수인 경우 뒤쪽에서 추출합니다.

MariaDB [(none)]> SELECT SUBSTRING_INDEX( '12.34.56.78', '.', -2 );
+-------------------------------------------+
| SUBSTRING_INDEX( '12.34.56.78', '.', -2 ) |
+-------------------------------------------+
| 56.78                                     |
+-------------------------------------------+

Related Posts

MariaDB / VIEW / 만들기, 수정하기, 삭제하기

MariaDB / VIEW / 만들기, 수정하기, 삭제하기

예제로 사용한 데이터베이스는 employees이다. VIEW VIEW는 SELECT의 결과를 테이블처럼 사용할 수 있게 해준다. 반복되는 쿼리를 대체하거나, 민감한 정보를 숨기고 싶을 때 사용한다. VIEW 만들기 CREATE VIEW 예를 들어 남자인 직원의 first_name과 last_name을 VIEW로 만든다고 하자. 우선 VIEW로 만들 데이터를 추출하는 쿼리를 만든다. SELECT first_name, last_name FROM employees WHERE gender = 'M' ; CREATE VIEW로 VIEW를 만든다. v_employees_male는 VIEW의 이름으로, 적절히 ...

MariaDB / DATABASE / 백업하기, 복원하기

MariaDB / DATABASE / 백업하기, 복원하기

모든 데이터베이스 백업과 복원 백업 모든 데이터베이스를 backup-all.sql로 백업 user는 권한 있는 사용자명으로 변경 mysqldump -u user -p --all-databases > backup-all.sql 복원 backup-all.sql을 복원 user는 권한 있는 사용자명으로 변경 mysql -u user -p < backup-all.sql 특정 데이터베이스 백업과 복원 백업 abc 데이터베이스를 abc.sql로 백업 user는 권한 있는 사용자명으로 변경 mysqldump -u user -p abc > abc.sql 복원 abc.sql을 데이터베이스 abc로 복원 user는 권한 있는 사용자명으로 변경 mysql ...

MariaDB / 피벗 테이블 만들기

MariaDB / 피벗 테이블 만들기

피벗 테이블은 엑셀의 유용한 기능 중의 하나이다. 예를 들어 아래의 왼쪽 데이터를 오른쪽 표처럼 만드는 것이 피벗 테이블이다. 조건에 따라 그룹화시켜서 보기 좋게 데이터를 정리하는 것이라 보면 된다. MariaDB에서도 몇 가지 함수를 이용하여 피벗 테이블을 만들 수 있다. 테이블의 이름이 pivot이라 가정하면, 아래처럼 쿼리를 짜면 된다. SELECT company , ...

MariaDB / 함수 / YEAR, MONTH, DAY / 날짜 데이터에서 년, 월, 일을 반환하는 함수

MariaDB / 함수 / YEAR, MONTH, DAY / 날짜 데이터에서 년, 월, 일을 반환하는 함수

날짜 형식의 데이터에서 년 또는 월 또는 일을 분리해서 출력하고 싶다면 YEAR, MONTH, DATE 함수를 사용합니다. YEAR 날짜 데이터에서 년을 출력하고 싶다면 YEAR 함수를 사용합니다. MariaDB > SELECT YEAR('2020-11-12') as Year; +------+ | Year | +------+ | 2020 | +------+ MONTH 날짜 데이터에서 월을 출력하고 싶다면 MONTH 함수를 사용합니다. MariaDB > SELECT MONTH('2020-11-12') as Month; +-------+ | Month | +-------+ | 11 ...

DBeaver / MariaDB / 연결하는 방법

DBeaver / MariaDB / 연결하는 방법

MariaDB를 명령어로만 관리하는 것은 힘듭니다. 적절한 툴을 이용하면 작업 속도를 높일 수 있습니다. MariaDB를 관리하는 툴을 여러 가지가 있는데, 그 중 하나가 DBeaver입니다. Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL ...

MariaDB / SELECT 결과를 INSERT하는 방법

MariaDB / SELECT 결과를 INSERT하는 방법

Z_1 테이블에서 a, b, c 열의 데이터를 Z_2 테이블의 x, y, z 열에 삽입한다고 하자. 우선 Z_1 테이블에서 a, b, c 열의 데이터를 가져오는 쿼리를 만든다. SELECT a, b, c FROM Z_1 ; 그 위에 INSERT를 추가한다. INSERT INTO Z_2 ( x, y, z ) SELECT a, b, ...

DBeaver / MariaDB / 데이터베이스 만들기, 삭제하기

DBeaver / MariaDB / 데이터베이스 만들기, 삭제하기

데이터베이스 만들기 Databases를 선택하고 마우스 우클릭합니다. 팝업 메뉴에서 를 클릭합니다. 데이터베이스 이름을 입력하고, Charset과 Collation을 선택한 후 를 클릭하면... 데이터베이스가 생성됩니다. 데이터베이스 수정하기 왼쪽에서 데이터베이스를 두 번 클릭하면 데이터베이스 정보가 나옵니다. 필요한 수정을 하고 를 클릭한 다음... 팝업 창의 내용을 확인하고 를 클릭하면... 데이터베이스가 수정됩니다. 데이터베이스 삭제하기 데이터베이스를 선택하고 마우스 우클릭합니다. 팝업 메뉴에서 를 클릭하고... 를 클릭하면... 데이터베이스가 삭제됩니다.

MariaDB / 연산자 / 논리 연산자

MariaDB / 연산자 / 논리 연산자

MariaDB의 논리 연산자에 대하여 알아본다. 예제로 사용하는 테이블은 아래의 데이터를 가진 T_2이라는 테이블이다. C_1의 데이터 형식은 정수, C_2의 데이터 형식은 문자이다. +----+------+------+ | ID | C_1 | C_2 | +----+------+------+ | 1 | 1 | A | | 2 | 2 | B ...

DBeaver / MariaDB / 기본 키(PRIMARY KEY) 만들기, 삭제하기

DBeaver / MariaDB / 기본 키(PRIMARY KEY) 만들기, 삭제하기

기본 키 만들기 기본 키를 만들 테이블을 더블 클릭합니다. Properties 탭에서 를 클릭합니다. 마우스 우클릭하여 를 클릭하거나, 아래쪽에 있는 아이콘을 클릭합니다. 기본 키로 만들 열을 선택하고 를 클릭합니다. 를 클릭하고... 를 클릭하면... 기본 키 설정이 완료됩니다. 기본 키 삭제하기 기본 키를 선택하고 마우스 우클릭한 후 를 클릭하거나, 아래쪽에 있는 휴지통 아이콘을 클릭하고... 를 클릭한 후... 를 클릭하면 기본 키가 ...

MariaDB / 함수 / LENGTH, BIT_LENGTH, CHAR_LENGTH / 문자열 길이 출력하는 함수

MariaDB / 함수 / LENGTH, BIT_LENGTH, CHAR_LENGTH / 문자열 길이 출력하는 함수

LENGTH LENGTH는 바이트(byte)로 계산된 문자열의 길이를 출력합니다. 영어. 숫자, 특수문자 등은 1로, 한글은 3으로 계산합니다. SELECT LENGTH( 'A1#가' ); +--------------------+ | LENGTH( 'A1#가' ) | +--------------------+ | 6 | +--------------------+ BIT_LENGTH BIT_LENGTH는 비트(bit)로 계산된 문자열의 길이를 출력합니다. 영어, 숫자, 특수문자 등은 ...