Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL

  1. MySQL UPDATE 쿼리로 모든 레코드의 첫 글자만 대문자로, 나머지는 소문자로 변환하는 방법

    MySQL에서 첫 글자만 대문자로 변환하기데이터베이스를 운영하다 보면 대소문자가 뒤섞인 문자열 데이터의 형식을 통일해야 하는 경우가 자주 발생합니다. 예를 들어, 모든 글자가 대문자로 저장된 이름 데이터를 첫 글자만 대문자, 나머지는 소문자 형태로 바꾸고 싶다면 MySQL의 UPDATE 문과 문자열 함수들을 조합하면 됩니다. 이번 글에서는 전체 레코드를 한 번에 업데이트하는 방법을 단계별로 살펴보겠습니다.1. 테이블 생성먼저 실습에 사용할 테이블을 생성합니다.mysql> create table DemoTable2017 

  2. MySQL에서 GROUP BY 조건으로 필드 업데이트하기 – UPDATE와 ORDER BY LIMIT 활용법

    MySQL에서는 UPDATE 문에 GROUP BY 절을 직접 사용할 수 없습니다. 하지만 ORDER BY 절과 LIMIT 절을 조합하면 특정 조건에 해당하는 여러 행 중에서 원하는 순서의 행 하나만 선택적으로 업데이트할 수 있습니다. 아래 예제를 통해 전체 과정을 단계별로 살펴보겠습니다. 1단계: 테이블 생성 먼저 CREATE TABLE 명령어로 테이블을 생성합니다. mysql> create table DemoTable2018     -> (     

  3. MySQL에서 열 값에 ENUM 타입 설정하는 방법

    MySQL에서는 테이블을 생성할 때 특정 컬럼에 ENUM 타입을 지정하여 미리 정의된 값들만 저장되도록 제한할 수 있습니다. 이 글에서는 ENUM 컬럼을 만들고, 데이터를 삽입한 뒤, ENUM 값을 기준으로 레코드를 조회하는 전체 과정을 예제와 함께 살펴보겠습니다.1. ENUM 컬럼이 포함된 테이블 생성먼저 학생 점수와 상태를 저장할 테이블을 생성합니다. StudentStatus 컬럼에는 First, Second, Fail 세 가지 값만 허용하도록 ENUM 타입을 설정합니다.mysql> create table DemoTable

  4. MySQL에서 한 스키마(데이터베이스)에서 다른 스키마로 데이터 삽입하는 방법

    MySQL에서 한 데이터베이스(스키마)의 테이블에 있는 데이터를 다른 데이터베이스의 테이블로 옮기려면 INSERT INTO ... SELECT 구문을 사용하면 됩니다. 이때 테이블 이름 앞에 데이터베이스 이름을 붙여주는 것이 핵심입니다.기본 문법두 개의 데이터베이스 yourDatabaseName1과 yourDatabaseName2가 있다고 가정했을 때, 기본적인 문법은 다음과 같습니다.insert into yourDatabaseName2.yourTableName2 select * from yourDatabaseName1.yourTa

  5. MySQL 단일 쿼리로 한 열에 여러 값 삽입하는 방법

    MySQL에서 INSERT 문 하나만으로 한 열에 여러 개의 값을 삽입하고 싶다면, 각 값을 괄호로 묶어 쉼표로 나열하는 방식을 사용하면 됩니다. 이 방법은 여러 번의 INSERT 문을 실행하는 것보다 훨씬 효율적이며, 데이터베이스와의 통신 횟수도 줄여줍니다.기본 문법단일 쿼리로 여러 값을 삽입할 때의 기본 문법은 다음과 같습니다.INSERT INTO yourTableName VALUES(yourValue1),(yourValue2),..........N;각각의 괄호 ()는 테이블에 삽입될 하나의 행을 의미합니다. 이렇게 하면 하나의

  6. 리눅스에서 MySQL 서버·클라이언트 SSL 암호화 연결 설정하는 방법

    개요데이터베이스에 저장된 정보는 기업의 핵심 자산입니다. 그러나 MySQL을 기본 설정 그대로 사용하면 클라이언트와 서버 사이를 오가는 데이터가 평문(암호화되지 않은 상태)으로 전송되기 때문에 네트워크 도청이나 중간자 공격에 노출될 위험이 있습니다.이 글에서는 리눅스 환경에서 OpenSSL을 이용해 인증서를 직접 발급하고, MySQL 서버와 클라이언트 간 통신을 SSL/TLS로 암호화하는 전체 과정을 단계별로 살펴봅니다. SSL 인증서는 서버의 신원을 검증하는 역할도 하므로 피싱(phishing) 공격으로부터도 일정 수준의 보호 효

  7. Ubuntu 16.04에서 MySQL 데이터 디렉토리 위치 변경하기 (단계별 가이드)

    데이터베이스가 빠르게 증가하거나 보안상의 이유로 데이터 디렉토리를 다른 위치로 옮겨야 할 때가 있습니다. 이 글에서는 Ubuntu 16.04 환경에서 MySQL 데이터 디렉토리의 위치를 변경하고, 기존 데이터베이스를 새로운 위치로 이전하는 방법을 단계별로 알아보겠습니다.사전 준비 사항sudo 권한을 가진 일반 사용자 계정이 있는 Ubuntu 서버설치되어 정상 작동 중인 MySQL데이터를 이전할 새로운 볼륨 또는 저장 공간 (본 가이드에서는 /mnt/data_vol/mysql을 새 위치로 사용하며, data_vol은 서버에 연결된 새

  8. 리눅스에서 MySQL을 MariaDB로 마이그레이션하는 방법 (단계별 완벽 가이드)

    MySQL에서 MariaDB로의 마이그레이션은 두 데이터베이스 간의 바이너리 호환성 덕분에 비교적 간단하게 진행할 수 있습니다. 이 글에서는 리눅스 환경에서 MySQL 데이터베이스를 MariaDB로 이전하는 전체 과정을 단계별로 살펴보겠습니다.오라클(Oracle)이 MySQL을 인수한 이후, 커뮤니티는 이에 대한 대안으로 새로운 데이터베이스인 MariaDB를 개발했습니다. MariaDB는 오픈소스로 공개되어 있으며 MySQL과 높은 호환성을 유지합니다. 실제로 RHEL, CentOS, Fedora 등 대부분의 리눅스 배포판은 이미

  9. PL/SQL로 1부터 n까지의 홀수 출력과 합계 구하기

    이 문제에서는 숫자 n이 주어졌을 때, PL/SQL을 사용하여 1부터 n까지의 모든 홀수를 출력하고, 그 홀수들의 합계까지 함께 구하는 것이 목표입니다.PL/SQL은 SQL의 절차적 언어 확장(Procedural Language Extension)입니다. PL/SQL 코드는 선언부와 실행부 등 관련된 선언과 명령문들을 하나의 블록으로 묶어 처리하는 일련의 명령 시퀀스로 구성됩니다.먼저 문제의 입출력 예시를 살펴보겠습니다.입력: 7출력: 홀수는 1, 3, 5, 7홀수의 합은 16해결 접근 방법이 문제는 다음과 같은 논리로 해결할 수

  10. CentOS 7에 MS SQL Server(베타) 설치 및 구성하는 방법 완벽 가이드

    이 글에서는 CentOS 7 환경에 MS SQL Server를 설치하고 구성하는 방법을 단계별로 자세히 알아보겠습니다. 마이크로소프트는 최근 Linux용 MS SQL Server 출시 계획을 공식 발표했으며, Red Hat Enterprise Linux, CentOS, Ubuntu용 베타 버전을 제공하고 있습니다. 단, 64비트 에디션만 지원된다는 점에 유의해야 합니다.사전 준비 사항설치를 시작하기 전에 아래 요구 사항을 충족하는지 확인하세요.최소 4GB RAM과 30GB 이상의 하드 디스크 공간을 갖춘 서버CentOS 7이 설치된

  11. MySQL 설치 후 반드시 점검해야 할 핵심 성능 튜닝 설정

    이 글에서는 MySQL 설치 직후 적용하면 더 빠르고 안정적인 성능을 얻을 수 있는 핵심 성능 튜닝 설정들을 살펴봅니다.사전 준비 사항MySQL이 이미 설치되어 있다고 가정하고 진행합니다. 성능 튜닝 설정을 시작하기 전에 몇 가지 팁을 먼저 확인하세요.경험이 많은 IT 담당자라도 실수로 인해 여러 문제가 발생할 수 있습니다. 따라서 이 글의 권장 설정을 적용하기 전에 아래 사항을 미리 숙지해 두면 문제를 예방할 수 있습니다.설정은 한 번에 하나씩만 적용하여 변경 효과를 정확하게 평가합니다.대부분의 변경 사항은 SET GLOBAL 명

  12. 파이썬(PyMySQL)으로 MySQL 데이터베이스 연결하기

    MySQL은 전 세계적으로 가장 널리 사용되는 오픈 소스 데이터베이스 중 하나입니다. 파이썬은 PyMySQL 라이브러리를 통해 MySQL에 손쉽게 연결하고, 데이터를 저장하고 조회할 수 있는 다양한 방법을 제공합니다.PyMySQL 설치하기사용 중인 파이썬 환경에 따라 아래 방법 중 하나를 선택해 PyMySQL 패키지를 설치할 수 있습니다.# 파이썬 콘솔(터미널)에서 설치 pip install pymysql # Anaconda 환경에서 설치 conda install -c anaconda pymysql # PyCharm 등 파이썬

  13. SQL Server에서 평균(Mean)과 최빈값(Mode) 구하는 방법

    문제 정의평균(Mean)은 주어진 데이터 집합의 모든 값을 더한 뒤, 데이터 개수로 나누어 계산한 대푯값입니다.최빈값(Mode)은 데이터 집합에서 가장 많이, 즉 가장 빈번하게 나타나는 값을 의미합니다.평균 계산 예시데이터 집합이 {1, 2, 3, 4}라면 평균은 다음과 같이 계산됩니다.(1 + 2 + 3 + 4) / 4 = 2.5최빈값 계산 예시데이터 집합이 {1, 2, 3, 4, 1, 1, 1, 1}이라면 숫자 1이 총 5번 나타나므로 최빈값은 1입니다.SQL Server 실습 예제아래에서는 SQL Server에서 테이블을 만들

  14. MySQL 저장 프로시저에서 SHOW CREATE TABLE 실행하기

    MySQL에서 SHOW CREATE TABLE 문은 특정 테이블의 생성 구문(DDL)을 확인할 때 유용하게 사용됩니다. 그러나 저장 프로시저 내부에서는 SHOW 문을 직접 실행할 수 없기 때문에, PREPARE와 EXECUTE를 활용한 동적 쿼리(dynamic query) 방식으로 처리해야 합니다. 이번 글에서는 그 과정을 단계별로 살펴보겠습니다. 1. 예제용 테이블 생성 먼저 실습에 사용할 테이블을 생성합니다. mysql> create table DemoTable2011    -> (   &

  15. MySQL 저장 프로시저에서 IN() 연산자로 특정 레코드만 조회하는 방법

    MySQL에서 저장 프로시저(Stored Procedure)와 IN() 연산자를 함께 사용하면 원하는 특정 레코드만 손쉽게 조회할 수 있습니다. 이번 글에서는 테이블 생성부터 저장 프로시저 작성, 그리고 호출까지 전 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable2004 ( UserId varchar(20), UserName varchar(20) ); Query OK, 0 rows affected (0.57 sec)2.

  16. MySQL에서 중복 ID별 부동 소수점 열의 최솟값 구하는 방법

    MySQL에서는 동일한 ID가 여러 번 중복되어 저장된 데이터에서 각 ID에 해당하는 열의 최솟값을 구해야 하는 경우가 자주 발생합니다. 이럴 때 GROUP BY 절과 MIN() 집계 함수를 함께 사용하면 손쉽게 해결할 수 있습니다.기본 문법중복된 ID가 있는 열에서 해당 그룹별 최솟값을 가져오려면 아래와 같이 GROUP BY와 MIN()을 조합하여 쿼리를 작성합니다.select min(yourColumnName) from yourTableName group by yourColumnName;예제 테이블 생성하기먼저 위 문법을 실습하

  17. MySQL에서 문자·숫자·특수 문자가 혼합된 열에서 특정 레코드 조회하기

    개요문자열, 숫자, 특수 문자가 섞여 있는 값이 저장된 열에서 특정 레코드를 조회하고 정렬해야 하는 경우가 있습니다. 이럴 때는 ORDER BY CAST()를 활용하면 됩니다. 아래 예제를 통해 구체적인 사용 방법을 살펴보겠습니다.예제 테이블 생성하기먼저 실습에 사용할 테이블을 생성합니다.mysql> create table DemoTable2006 (     UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,     Use

  18. MySQL에서 여러 레코드를 한 번에 빠르게 삽입하는 방법

    대량의 데이터를 테이블에 삽입할 때 레코드마다 별도의 INSERT 문을 실행하면 속도가 크게 느려집니다. 이럴 때는 하나의 INSERT 문에 여러 개의 값 목록을 쉼표로 구분하여 나열하는 다중 행(Multi-row) 삽입 방식을 사용하면 됩니다.기본 문법insert into yourTableName values(yourValue1,yourValue2,...N),(yourValue1,yourValue2,...N).....N;각 괄호 () 안에는 하나의 레코드(행)에 해당하는 값들이 들어가고, 괄호 사이는 쉼표로 구분합니다. 이렇게 하

  19. MySQL 사용자 정의 변수와 IF 문, SELECT를 활용해 사용자 정의 메시지 출력하는 방법

    MySQL에서는 사용자 정의 변수(User-Defined Variable)와 IF() 함수를 조합하면 쿼리 결과에 따라 원하는 메시지를 동적으로 출력할 수 있습니다. 이번 글에서는 테이블을 생성하고 데이터를 삽입한 뒤, SELECT 문의 결과를 사용자 정의 변수에 저장하고 IF 문으로 조건별 메시지를 설정하는 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable2008 (    Value int ); Query OK, 0

  20. MySQL 쿼리에서 LIKE 절 두 번 사용하는 방법

    MySQL에서 하나의 쿼리 안에 LIKE 절을 여러 번 사용하려면 OR 연산자를 활용하면 됩니다. 이 방법을 사용하면 여러 개의 패턴 조건을 동시에 만족하는 레코드를 손쉽게 조회할 수 있습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable2009 ( Name varchar(20) ); Query OK, 0 rows affected (0.51 sec)2. 데이터 삽입하기INSERT 명령어를 사용해 몇 개의 레코드를 추가합니다.mysql> insert

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:15/229  20-컴퓨터/Page Goto:1 9 10 11 12 13 14 15 16 17 18 19 20 21