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

MySQL

  1. MySQL 저장 프로시저로 전체 테이블 조회하는 방법 (단계별 예제)

    MySQL에서는 저장 프로시저(Stored Procedure) 내부에 SELECT * FROM 테이블명 쿼리를 작성하여 테이블의 전체 데이터를 간편하게 조회할 수 있습니다. 이 글에서는 테이블 생성부터 저장 프로시저 작성과 호출까지, 실제 실행 결과와 함께 단계별로 살펴보겠습니다. 1. 예제용 테이블 생성 먼저 학생 정보를 담을 테이블을 만들어 보겠습니다. 아래 쿼리는 자동 증가(AUTO_INCREMENT)되는 기본키와 학생 이름 컬럼으로 구성되어 있습니다. mysql> create table DemoTable654 ( &nb

  2. MySQL TIME 값을 일·시간 형식으로 변환하는 방법 완벽 가이드

    이 글에서는 MySQL에서 시간(TIME) 값을 일(day)과 시간(hour) 형식으로 변환하는 방법을 알아봅니다. 예를 들어 150:50:10이라는 TIME 값을 6 DAYS, 6 HOURS(6일 6시간) 형태로 바꾸는 것이 목표입니다.핵심 함수: CONCAT()와 HOUR()이 변환은 CONCAT() 함수와 HOUR() 함수를 함께 사용하면 간단하게 처리할 수 있습니다. 먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable657(DueTime time);Query OK, 0 r

  3. MySQL에서 StudentId를 기준으로 테이블 업데이트하는 방법

    MySQL에서 StudentId를 기준으로 테이블 업데이트하기MySQL에서 UPDATE 문과 WHERE 절을 함께 사용하면 특정 조건에 맞는 레코드만 선택적으로 수정할 수 있습니다. 이번 글에서는 StudentId(학생 ID) 값을 기준으로 테이블의 데이터를 업데이트하는 방법을 테이블 생성부터 결과 확인까지 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 예제에 사용할 테이블을 생성합니다. StudentId는 기본 키(primary key)로 설정하여 각 학생을 고유하게 식별할 수 있도록 합니다.mysql> create tab

  4. MySQL에서 여러 열의 순위(RANK)를 동시에 표시하는 방법

    MySQL에서 여러 열의 순위(Rank)를 동시에 표시하는 방법MySQL에서 여러 열에 대한 순위를 한 번의 쿼리로 구하려면 FIND_IN_SET() 함수를 활용하면 됩니다. 이 방식은 각 열의 값을 내림차순으로 정렬한 문자열을 GROUP_CONCAT()으로 만든 뒤, 해당 값이 그 문자열에서 몇 번째 위치에 있는지 찾아 순위를 계산하는 원리입니다.예제를 통해 단계별로 살펴보겠습니다.1. 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable634 (FirstName varcha

  5. MySQL에서 한 열에 NULL과 빈 값 조건 두 가지 동시에 적용하는 방법

    MySQL에서 하나의 열에 대해 NULL 값과 빈 문자열()을 동시에 제외하고 데이터를 조회해야 하는 경우가 자주 있습니다. 이 글에서는 WHERE 절에 두 가지 조건을 함께 사용하여 원하는 결과를 얻는 방법을 예제와 함께 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable635(    EmployeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    

  6. MySQL SUM() 함수로 특정 값의 발생 횟수 한 번에 계산하기

    개요MySQL에서 특정 값(예: John, Robert 등)이 컬럼에 몇 번 등장하는지 확인하고 싶을 때가 있습니다. 이럴 때 SUM() 집계 함수를 활용하면 여러 개의 고유 값별 발생 횟수를 단 한 번의 쿼리로 동시에 계산할 수 있습니다.1. 샘플 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable636 (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,   &nb

  7. MySQL에서 조건이 참일 때 특수 문자로 값을 설정하는 방법

    MySQL에서 특정 조건이 참(true)일 때 원하는 값을, 그렇지 않을 경우 특수 문자를 대신 표시하고 싶다면 IF() 함수를 활용하면 됩니다. IF() 함수는 조건식의 결과에 따라 두 가지 값 중 하나를 반환하는 간단하면서도 강력한 도구입니다.이 글에서는 실제 예제를 통해 클라이언트 정보 테이블에서 나이가 50세를 초과하는 경우에만 이름을 표시하고, 그 외의 경우에는 하이픈(-)으로 구성된 특수 문자를 출력하는 방법을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다. ClientId는 자동 증가

  8. MySQL 함수 생성으로 특정 열 값의 평균 구하는 방법

    MySQL에서는 사용자 정의 함수(Stored Function)를 직접 만들어 특정 조건에 맞는 열 값의 평균을 손쉽게 계산할 수 있습니다. 이 글에서는 예제 테이블을 만들고, 학생별 점수의 평균을 반환하는 함수를 단계별로 작성하는 방법을 알아보겠습니다.1단계: 테이블 생성하기먼저 아래 쿼리로 예제 테이블을 생성합니다.mysql> create table DemoTable638 (Name varchar(100),Marks int); Query OK, 0 rows affected (0.68 sec)2단계: 데이터 삽입하기INSER

  9. MySQL에서 AUTO_INCREMENT를 활용해 1000부터 시작하는 INT 필드(기본 키 외) 생성하는 방법

    MySQL에서 기본 키(primary key)가 아닌 INT 컬럼에 AUTO_INCREMENT 속성을 부여하고, 값이 1000부터 시작하도록 설정하는 방법을 알아보겠습니다.핵심 원리먼저 테이블 생성 시 해당 컬럼에 AUTO_INCREMENT 속성을 지정하고, 이후 ALTER TABLE 문으로 시작 값을 1000으로 변경하면 됩니다. 참고로 MySQL에서는 AUTO_INCREMENT 컬럼에 반드시 인덱스가 정의되어 있어야 하므로, 별도의 INDEX를 추가해 주어야 합니다.1단계: 테이블 생성먼저 예제 테이블을 생성합니다.mysql&g

  10. MySQL에서 임시 테이블에 테이블 결과를 표시하는 방법

    MySQL에서는 CREATE TEMPORARY TABLE 문을 사용하여 기존 테이블의 조회 결과를 임시 테이블에 저장할 수 있습니다. 임시 테이블은 세션이 종료되면 자동으로 삭제되므로, 일시적인 데이터 작업에 매우 유용합니다.1. 기본 테이블 생성먼저 예제로 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable1 (Id int, Name varchar(100)); Query OK, 0 rows affected (0.89 sec)2. 데이터 삽입INSERT 명령을 사용하여 테이블에 레코드를 추가

  11. MySQL GROUP BY로 특정 회사의 직원 이름 조회하기

    데이터베이스 작업을 하다 보면 여러 회사의 직원 정보가 섞여 있는 테이블에서, 특정 회사에 소속된 직원 이름만 중복 없이 추출해야 하는 경우가 자주 있습니다. 이럴 때 MySQL의 GROUP BY 절과 WHERE 조건을 함께 사용하면 간단하게 해결할 수 있습니다.이 글에서는 예제 테이블을 만들고 데이터를 삽입한 뒤, GROUP BY를 활용해 특정 회사(예: Google)의 직원 이름을 조회하는 방법을 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 직원 정보를 저장할 테이블을 생성합니다.mysql> create table De

  12. MySQL 저장 프로시저에서 IF…THEN…END IF 문으로 레코드 표시하기

    MySQL 저장 프로시저(Stored Procedure)에서 IF…THEN…END IF 조건문을 사용하면 특정 조건에 따라 레코드를 삽입하거나 조회할 수 있습니다. 이번 글에서는 테이블 생성부터 저장 프로시저 작성, 호출까지 전 과정을 예제와 함께 단계별로 살펴보겠습니다. 1. 데모 테이블 생성 먼저 예제에 사용할 테이블을 생성합니다. mysql> create table DemoTable643 (ClientId int); Query OK, 0 rows affected (0.86 sec) INSERT 문을 이용해 샘플 데이터를

  13. MySQL에서 대소문자가 다른 성까지 한 번에 검색하는 방법 – LOWER() 함수 활용하기

    데이터베이스 작업을 하다 보면 Smith와 smith처럼 대소문자만 다른 값들을 하나의 조건으로 검색해야 하는 경우가 자주 발생합니다. MySQL의 LOWER() 함수를 사용하면 이러한 문제를 간단하게 해결할 수 있습니다. 이번 글에서는 예제 테이블을 만들고, 대소문자에 관계없이 특정 성(Last Name)을 가진 레코드를 조회하는 방법을 단계별로 알아보겠습니다.1. 테이블 생성하기먼저 예제로 사용할 테이블을 생성합니다.mysql> create table DemoTable623 (FirstName varchar(100), La

  14. MySQL에서 두 열 값 사이의 시간 차이 계산하기 – TIMEDIFF와 TIME_FORMAT 완벽 가이드

    MySQL에서 출근 시간(PunchIn)과 퇴근 시간(PunchOut)처럼 서로 다른 두 열에 저장된 datetime 값 사이의 시간 차이를 구해야 하는 경우가 자주 있습니다. 이럴 때 TIMEDIFF() 함수와 TIME_FORMAT() 함수를 함께 사용하면 원하는 형식으로 깔끔하게 결과를 얻을 수 있습니다.핵심 함수 소개TIMEDIFF(시간1, 시간2) : 두 시간 값의 차이를 계산하여 반환합니다.TIME_FORMAT(시간, 형식) : 계산된 시간 값을 %H hrs, %i min. 같은 지정된 형식으로 변환해 줍니다.1단계: 테이

  15. MySQL 테이블에서 특정 조건에 맞는 일부 행만 선택하여 조회하는 방법

    MySQL에서 테이블의 전체 데이터가 아닌, 특정 조건을 만족하는 일부 행만 선택해서 조회해야 하는 경우가 자주 있습니다. 이 글에서는 서브쿼리와 NOT IN 연산자를 활용해 원하는 행만 골라서 출력하는 방법을 단계별로 살펴보겠습니다.1. 예제 테이블 생성하기먼저 실습에 사용할 테이블을 생성합니다. 학생 ID, 이름, 점수를 저장하는 간단한 구조입니다.mysql> create table DemoTable625 (     StudentId int NOT NULL AUTO_INCREMENT PR

  16. MySQL에서 열 값을 0으로 채우는 방법 – ZEROFILL 활용법

    MySQL에서 숫자 열의 표시값 앞을 0으로 채우고 싶다면 ZEROFILL 개념을 사용하면 됩니다. ZEROFILL은 컬럼 정의 시 설정한 표시 폭(display width)만큼 필드의 표시값 앞에 0을 채워 출력해 줍니다.1. 테이블 생성하기먼저 ZEROFILL 속성을 적용한 테이블을 생성합니다.mysql> create table DemoTable626 (Value int(5) zerofill); Query OK, 0 rows affected (0.71 sec)위 예제에서는 int(5)로 표시 폭을 5자리로 지정했기 때문에,

  17. MySQL에서 열의 모든 값을 대문자(UPPERCASE)로 변환하는 방법

    MySQL UPPER() 함수로 열의 모든 값을 대문자로 변환하기MySQL에서 특정 열(column)에 저장된 모든 문자열 값을 대문자로 변환하려면 UPPER() 함수를 사용하면 됩니다. 이 함수는 입력된 문자열의 영문자를 모두 대문자로 바꿔 반환합니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable627 (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));Query OK, 0 rows affected (

  18. MySQL에서 열 값 목록 중 소수점 숫자만 조회하는 방법

    MySQL에서 DECIMAL 타입으로 저장된 값들 중 정수가 아닌, 즉 소수점 이하 자릿수를 가진 숫자만 골라내고 싶을 때가 있습니다. 이럴 때는 FLOOR() 함수를 활용하면 간단하게 해결할 수 있습니다. FLOOR 함수는 인자로 받은 값을 내림하여 가장 큰 정수를 반환하므로, 원래 값과 FLOOR 값이 다르다면 그 값은 소수를 포함한 숫자라고 판단할 수 있습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable628 (Value DECIMAL(10,2)); Qu

  19. MySQL에서 문자열의 왼쪽과 중간에 있는 '%' 문자를 이스케이프하는 방법

    MySQL에서 % 문자 이스케이프하기MySQL의 LIKE 연산자에서 %는 임의의 문자열과 일치하는 와일드카드로 해석됩니다. 따라서 컬럼 값에 실제 % 문자가 포함되어 있고 이를 그대로 검색하려면, 백슬래시(\%)로 이스케이프 처리해야 합니다. 이 글에서는 예제 테이블을 만들고 문자열의 왼쪽(시작), 중간, 끝에 있는 % 문자를 이스케이프하여 조회하는 방법을 단계별로 살펴봅니다.1. 예제 테이블 생성먼저 테이블을 생성합니다.mysql> create table DemoTable629 (StudentId int NOT NULL AU

  20. MySQL에서 날짜 형식을 변환하는 방법 – STR_TO_DATE 함수 완벽 가이드

    MySQL 날짜 형식 변환이 필요한 이유실무에서 데이터를 다루다 보면 2015-21-01처럼 연도-일-월 순서로 저장된 비표준 날짜 문자열을 자주 만나게 됩니다. 이런 값은 VARCHAR 타입으로 저장되어 있기 때문에 날짜 연산이나 정렬에 바로 사용할 수 없습니다. 이때 MySQL의 STR_TO_DATE() 함수를 사용하면 문자열을 올바른 DATE 형식으로 손쉽게 변환할 수 있습니다.1. 테이블 생성하기먼저 날짜가 문자열로 저장된 테이블을 생성해 보겠습니다.mysql> create table DemoTable630 (Arriv

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:80/229  20-컴퓨터/Page Goto:1 74 75 76 77 78 79 80 81 82 83 84 85 86