f 'DB/MariaDB' 카테고리의 글 목록 — 하늘속에서IT

DB/MariaDB

    [MariaDB] TIME_TO_SEC 내장함수를 사용해서 TIME 형식의 string 값을 초로 변경해보자

    설명 MariaDB 는 TIME_TO_SEC(time) 내장함수를 제공한다. time : TIME 형식의 값을 의미한다. ex) TIME_TO_SEC('21:48:24') MariaDB 버전에 따라 다른 타입의 값을 반환한다. 5.3 이하 : INT 값을 반환한다. 5.3 이후 : DOUBLE 값을 반환한다. 5.3 이후의 MariaDB 버전에서는 DOUBLE 로 값을 반환하기 때문에 microseconds 까지 값을 보존한다. 사용 예시 SELECT TIME_TO_SEC('21:50:44'); -- > 78644 출처 TIME_TO_SEC Returns the time argument, converted to seconds. mariadb.com

    [MariaDB] STR_TO_DATE 내장함수를 사용해서 string 을 DATETIME 으로 변환하자.(feat. 사용예시)

    설명 MariaDB 에서는 STR_TO_DATE(str, format) 내장함수를 제공한다. str : string 형태의 입력값이다. format : format 형식의 string 입력값이다. ex) STR_TO_DATE('21:31:58', '%H:%i:%s') STR_TO_DATE 는 str 에 따라서 DATE, TIME 혹은 DATETIME 으로 반환하게 된다. 만약 str 을 시간, 날짜 형식의 값으로 입력하지 않게 되면 null 이나 syntax error 를 응답하게 된다. 사용 예시 특정 영상의 시간을 기록하는 테이블이 있다. 테이블에서는 videoLength 컬럼을 기록하고 있으며 그 형태는 'HH:mm:ss' 형태의 값이다. 테이블을 활용해서 영상의 총 시간에 대해 추출해보자. CRE..

    [MariaDB] csv 형태로 저장된 필드를 조회하고 싶다면 사용하는 내장함수 FIND_IN_SET

    발단 외래키로 존재하는 값이 달라지지 않는다고 가정하고, 우리는 DB 를 설계할 때 종종 조회를 위해 외래키를 csv 형태로 가지는 field 를 설계한다. 이런 상황에서 조회할 때 사용하면 좋은 내장함수를 발견하게 되었다. 설명 만약 csv 형태로 값을 저장하는게 아니라면 field 에 특정구조를 가지게 한다. 예를들면 prefix, suffix 로 `|` 를 사용하는 것이다. 1,2,3 -> |1|2|3| 으로 저장하여 3을 조회하고 싶을 때 |3| 을 조회하면 된다. 위와 같은 구조도 상황에 따라서 사용하면 되지만, 처음에 csv 형태로 값을 저장하기로 하였기에 구조를 변경하고 싶지 않았다. 따라서, FIND_IN_SET 을 통해 문제를 해결하였다. 해결 FIND_IN_SET 은 두개의 파라미터를 ..