>  기사  >  데이터 베이스  >  MySQL 데이터 변환

MySQL 데이터 변환

王林
王林원래의
2023-05-20 10:20:371412검색

데이터 분석이 점점 더 중요해지면서 데이터 변환 및 정리의 필요성이 점점 더 커지고 있습니다. 데이터 분석 과정에서 우리는 일반적으로 다양한 형식과 소스의 데이터를 필요한 형식으로 변환해야 합니다. 그중 MySQL은 오늘날 널리 사용되는 관계형 데이터베이스 관리 시스템입니다. 이 기사에서는 데이터 변환에 MySQL을 사용하는 방법을 소개합니다.

1. MySQL 데이터 유형

데이터 변환을 수행하기 전에 데이터 유형을 올바르게 변환하려면 MySQL 데이터 유형을 이해해야 합니다. 다음은 MySQL이 지원하는 주요 데이터 유형입니다:

  1. 정수 유형:tinyint, smallint,mediumint, int, bigint
  2. 부동 소수점 유형: float, double,decimal
  3. 문자 유형: char, varchar, text, longtext
  4. 날짜 시간 유형: 날짜, 시간, 날짜/시간, 타임스탬프

2. 데이터 가져오기 및 내보내기

MySQL은 csv, json, xml 등과 같은 다양한 데이터 형식을 가져오고 내보낼 수 있습니다. 데이터 분석 과정에서 csv는 매우 일반적으로 사용되는 형식입니다. CSV 파일을 MySQL로 가져오고 내보내는 방법은 다음과 같습니다.

  1. 데이터 가져오기

MySQL에서 csv 파일을 가져오려면 LOAD DATA 문을 사용할 수 있습니다. 다음 내용이 포함된 "data.csv"라는 csv 파일이 있다고 가정합니다.

name,age,gender
Alice,23,Female
Bob,25,Male
Charlie,28,Male

그런 다음 다음 SQL 문을 사용하여 MySQL의 "users" 테이블로 데이터를 가져올 수 있습니다.

LOAD DATA INFILE '/path/to/data.csv'
INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY '
'
IGNORE 1 ROWS;

위의 SQL 문은 다음을 변환합니다. csv 파일의 데이터는 "users"라는 테이블에 삽입되며 "name", "age" 및 "gender" 열은 "data.csv" 파일의 각 데이터 행에 해당합니다. IGNORE 1 ROWS는 csv 파일의 첫 번째 콘텐츠 행을 무시한다는 의미입니다.

  1. 데이터 내보내기

SELECT ... INTO OUTFILE ... 문을 사용하여 MySQL의 데이터를 csv 파일로 내보냅니다. 다음 SQL 문은 MySQL의 "users" 테이블에 있는 데이터를 "data.csv" 파일로 내보냅니다.

SELECT name, age, gender
INTO OUTFILE '/path/to/data.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '
'
FROM users;

위의 SQL 문에서는 "name", "age" 및 "gender" 열을 선택했습니다. 필드 구분 기호와 줄 구분 기호를 각각 지정하려면 FIELDS TERMINATED BY ',' 및 LINES TERMINATED BY '
'를 사용하세요.

3. 데이터 유형 변환

MySQL에서는 CAST 및 CONVERT 함수를 사용하여 데이터를 한 유형에서 다른 유형으로 변환할 수 있습니다. 다음은 몇 가지 일반적인 데이터 유형 변환 예입니다.

  1. 문자열을 숫자로 변환

문자열을 숫자 유형으로 변환하려면 CAST 함수를 사용하세요. 예를 들어, 다음 SQL 문은 문자열 "123"을 정수로 변환합니다.

SELECT CAST('123' AS SIGNED);

위 SQL 문은 숫자 123을 출력합니다. 마찬가지로 다음 SQL 문은 문자열 "3.14"를 부동 소수점 숫자로 변환합니다.

SELECT CAST('3.14' AS DECIMAL(10,2));

위 SQL 문은 숫자 3.14를 출력합니다.

  1. 숫자를 문자열로 변환

숫자 유형을 문자열 유형으로 변환하려면 CAST 함수를 사용하세요. 예를 들어, 다음 SQL 문은 숫자 123을 문자열로 변환합니다.

SELECT CAST(123 AS CHAR);

위 SQL 문은 "123"이라는 문자열을 출력합니다.

  1. 날짜 및 시간 유형 변환

MySQL의 날짜 및 시간 유형에는 날짜, 시간, 날짜/시간 및 타임스탬프가 포함됩니다. CAST 및 CONVERT 함수를 사용하여 날짜 시간 유형을 문자열 유형으로, 문자열 유형을 날짜 시간 유형으로 변환할 수 있습니다. 예를 들어, 다음 SQL 문은 날짜/시간 유형을 문자열 유형으로 변환합니다.

SELECT CAST(NOW() AS CHAR);

위의 SQL 문은 현재 날짜/시간의 문자열 표현을 출력합니다. 또한 다음 SQL 문은 문자열 유형을 날짜/시간 유형으로 변환합니다.

SELECT CAST('2022-01-01 00:00:00' AS DATETIME);

위 SQL 문은 날짜/시간 유형 "2022-01-01 00:00:00"을 출력합니다.

4. 데이터 클리닝

실제 데이터 분석에서는 데이터의 정확성과 표준화를 보장하기 위해 데이터 클리닝이 필요한 경우가 많습니다. 다음은 몇 가지 일반적인 데이터 정리 예시입니다.

  1. Deduplication

중복 제거는 데이터 정리의 일반적인 방법입니다. MySQL에서는 DISTINCT 키워드를 사용하여 데이터 중복을 제거할 수 있습니다. 다음 SQL 문은 "users" 테이블에서 고유한 성별을 선택합니다.

SELECT DISTINCT gender FROM users;
  1. Missing Value Handling

누락된 값을 처리하는 것은 데이터 정리의 중요한 단계 중 하나입니다. MySQL에서는 IFNULL 함수를 사용하여 누락된 값을 기본값으로 바꿀 수 있습니다. 예를 들어, 다음 SQL 문은 "users" 테이블에서 누락된 연령을 -1로 바꿉니다.

SELECT name, IFNULL(age, -1) AS age, gender FROM users;

위의 SQL 문은 이름, 연령 및 성별 목록을 출력하며, "age" 열이 비어 있으면 -1 로 합니다.

  1. 데이터 그룹화

데이터 그룹화는 특정 특성에 따라 데이터를 여러 그룹으로 나눌 수 있는 일반적인 데이터 정리 방법입니다. MySQL에서는 GROUP BY 키워드를 사용하여 데이터를 그룹화할 수 있습니다. 다음 SQL 문은 "users" 테이블을 성별별로 그룹화하고 각 그룹의 사람 수를 계산합니다.

SELECT gender, COUNT(*) AS count FROM users GROUP BY gender;

는 각 성별에 대한 통계 데이터를 출력합니다. 예를 들어 "여성"에는 1명이 있고 "남성"에는 2명이 있습니다. 등. .

요약

이 글에서는 데이터 가져오기 및 내보내기, 데이터 유형 및 데이터 정리를 포함한 데이터 변환에 MySQL을 사용하는 방법을 소개합니다. 이러한 기술을 익히면 데이터 분석의 효율성과 정확성을 향상하는 데 도움이 될 수 있습니다. 실제 응용 분야, 특히 대규모 데이터를 처리할 때 데이터 분석 결과가 정확하고 신뢰할 수 있도록 하려면 적절한 데이터 유형, 변환 방법 및 정리 전략을 신중하게 선택해야 합니다.

위 내용은 MySQL 데이터 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.