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

MySQL

  1. MySQL 쿼리에서 백분율 계산 후 결과 반올림하기

    MySQL 쿼리에서 백분율 계산 후 결과 반올림하기MySQL에서 두 값의 비율을 백분율(%) 형태로 표시하고 싶다면 CONCAT() 함수와 ROUND() 함수를 함께 사용하면 됩니다. ROUND()로 계산 결과를 원하는 자릿수까지 반올림한 뒤, CONCAT()으로 % 기호를 붙여주는 방식입니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable1844    (    Number int,  &

  2. MySQL에서 15일 이전의 레코드를 조회하는 방법

    MySQL에서 특정 날짜 기준으로 15일 이전의 레코드를 조회하려면 INTERVAL 개념과 DATE_SUB() 함수를 활용하면 됩니다. DATE_SUB()는 지정한 날짜에서 일정 기간을 빼는 함수로, INTERVAL과 함께 사용하면 원하는 시점 이전의 데이터를 손쉽게 필터링할 수 있습니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable1845    (    ArrivalDate date  

  3. MySQL에서 특정 월과 연도를 기준으로 레코드 조회하는 방법

    ```html MySQL에서 날짜 데이터가 저장된 테이블에서 특정 월과 연도에 해당하는 레코드만 조회하고 싶다면 MONTH() 함수와 YEAR() 함수를 함께 사용하면 됩니다. 이 두 함수는 각각 DATE 타입 값에서 월과 연도를 숫자로 추출해 주기 때문에 WHERE 절에서 조건 비교에 활용하기 매우 편리합니다.1. 예제 테이블 생성먼저 구매 날짜(PurchaseDate)를 저장할 테이블을 생성합니다.mysql> create table DemoTable1846    (  &

  4. MySQL 쿼리에서 열에 사용자 정의 값을 추가하는 방법

    MySQL에서 조회 결과에 실제 데이터에는 없는 사용자 정의 값을 추가하고 싶은 경우가 있습니다. 이럴 때 UNION ALL을 활용하면 간단하게 해결할 수 있습니다. 아래에서 테이블 생성부터 값 추가까지 전체 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 ENUM 타입의 컬럼을 가진 테이블을 생성합니다.mysql> create table DemoTable1847      (      GameStatus ENUM(PENDING,COMPLETED,CANCELLED) &

  5. MySQL에서 한 셀에 여러 요소 세트 저장하는 방법 – JSON 데이터 타입 활용하기

    MySQL에서 한 셀에 요소 세트 추가하기관계형 데이터베이스에서 하나의 셀(컬럼)에 여러 개의 요소를 저장해야 하는 경우가 종종 있습니다. 이럴 때 JSON 데이터 타입을 활용하면 하나의 셀에 배열 형태로 여러 값을 손쉽게 저장할 수 있습니다. MySQL 5.7 버전부터 JSON 타입을 기본적으로 지원하며, 잘못된 형식의 JSON 문자열이 입력되면 자동으로 오류를 반환해 데이터 유효성까지 검증해 줍니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable1828  &nbs

  6. MySQL에서 특정 열의 'NO' 값 개수만 조회하는 쿼리 작성법

    개요MySQL에서 ENUM 타입으로 선언된 열에 저장된 값 중 NO 값만 골라 개수를 집계해야 하는 경우가 종종 있습니다. 이 글에서는 예제 테이블을 만들고, GROUP BY와 SUM 함수를 활용해 이름별로 NO 값의 개수만 반환하는 방법을 단계별로 살펴보겠습니다.1. 예제 테이블 생성먼저 이름(Name)과 수석 여부(isTopper)를 저장하는 테이블을 생성합니다. isTopper 열은 ENUM 타입으로 YES와 NO 두 값만 허용합니다.mysql> create table DemoTable1829   &nb

  7. MySQL NOT IN()으로 특정 행만 남기고 나머지 데이터 삭제하기

    MySQL에서 NOT IN() 절을 사용하면 지정한 값에 해당하지 않는 행들만 선택적으로 삭제할 수 있습니다. 이 글에서는 예제 테이블을 만들고, 특정 학생 데이터를 제외한 나머지 행을 삭제하는 전체 과정을 단계별로 살펴보겠습니다. 1. 예제 테이블 생성 먼저 학생 정보를 저장할 테이블을 생성합니다. AUTO_INCREMENT 속성으로 자동 증가되는 기본 키를 설정하고, 시작 값을 101로 지정합니다. mysql> create table DemoTable1830     (  &nbs

  8. MySQL에서 ZEROFILL로 사용자 지정 자동 증가(AUTO_INCREMENT) 설정하는 방법

    MySQL에서 ZEROFILL로 사용자 지정 자동 증가 설정하기MySQL에서는 ZEROFILL 옵션과 AUTO_INCREMENT를 함께 사용하면, 자동 증가되는 숫자 앞을 0으로 채워 고정된 자릿수 형식으로 표시할 수 있습니다. 예를 들어 필드 너비를 7로 지정하면 101이라는 값이 0000101처럼 출력됩니다.1. 테이블 생성먼저 UserId 컬럼에 ZEROFILL과 AUTO_INCREMENT를 설정한 테이블을 생성해 보겠습니다.mysql> create table DemoTable1831   &nb

  9. MySQL 테이블에 JSON 데이터 삽입하는 방법

    MySQL 5.7 버전부터 JSON 데이터 타입을 기본적으로 지원하기 때문에, 별도의 확장 없이도 JSON 형식의 데이터를 컬럼에 그대로 저장할 수 있습니다. 이번 글에서는 JSON 타입의 컬럼을 가진 테이블을 생성하고, 실제로 데이터를 삽입한 뒤 조회하는 과정까지 단계별로 살펴보겠습니다. 1. JSON 타입 컬럼을 가진 테이블 생성 먼저 JSON 타입의 컬럼을 포함하는 테이블을 생성합니다. 아래 예제에서는 이름 목록을 저장하기 위한 ListOfNames 컬럼을 JSON 타입으로 정의했습니다. mysql> create tabl

  10. MySQL MATCH...AGAINST로 특정 열의 문자열 포함 행 검색하기

    MySQL에서는 FULLTEXT 인덱스와 함께 MATCH() ... AGAINST() 구문을 사용하면 특정 열에 원하는 문자열이 포함된 행을 빠르고 효율적으로 검색할 수 있습니다. LIKE 연산자를 사용한 단순 패턴 매칭보다 성능이 뛰어나 대용량 텍스트 데이터 검색에 적합합니다. 이번 글에서는 예제를 통해 사용 방법을 단계별로 살펴보겠습니다.1. 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable1833    (  &nbs

  11. MySQL에서 쉼표로 구분된 값으로 랜덤 행을 가져오는 방법

    MySQL에서 무작위(랜덤)로 행을 조회하려면 ORDER BY RAND() 절을 사용하면 됩니다. 아래 예제를 통해 단계별로 살펴보겠습니다. 1. 테이블 생성 먼저 쉼표로 구분된 ID 목록을 저장할 테이블을 만듭니다. mysql> create table DemoTable1835     (     ListOfIds varchar(20)     ); Query OK, 0 rows affected (0.00 sec) 2. 샘플

  12. MySQL 1064 오류 해결 방법 – 'TYPE=MyISAM' 구문 오류 수정하기

    MySQL 오류 1064, 왜 발생할까?테이블을 생성할 때 저장 엔진(Storage Engine)을 지정하는 자리에 TYPE 키워드를 사용하면 다음과 같은 1064 구문 오류가 발생합니다.mysql> create table DemoTable1836    (    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    ClientName varchar(20)  &nb

  13. MySQL SELECT 쿼리로 특정 열의 레코드만 조회하는 방법

    MySQL에서 테이블의 전체 데이터가 아닌 특정 열(컬럼)의 값만 가져오고 싶다면, SELECT 문 뒤에 원하는 열 이름을 명시하면 됩니다. SELECT *는 모든 열을 반환하지만, 열 이름을 직접 지정하면 해당 열의 레코드만 효율적으로 조회할 수 있습니다.아래 예제를 통해 실제 동작 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable1837     (     Stu

  14. MySQL LOCATE() 함수로 부분 문자열 위치 기반 검색 결과 정렬하기

    MySQL에서 부분 문자열 위치를 기준으로 검색 결과 정렬하기검색 결과를 특정 부분 문자열이 나타나는 위치를 기준으로 정렬하고 싶다면 ORDER BY LOCATE()를 사용하면 됩니다. LOCATE() 함수는 문자열 안에서 해당 부분 문자열이 처음 등장하는 위치(인덱스)를 반환하므로, 이 값을 기준으로 정렬하면 검색어가 앞쪽에 있는 행부터 순서대로 조회됩니다.간단한 예제를 통해 살펴보겠습니다. 먼저 테이블을 생성합니다.mysql> create table DemoTable1838     (   &nbs

  15. MySQL에서 열의 동일한 값 개수 세기 – COUNT(*)와 GROUP BY 완벽 가이드

    MySQL에서 특정 열에 같은 값이 몇 번 반복되어 나타나는지 확인하고 싶다면 COUNT(*) 함수와 GROUP BY 절을 함께 사용하면 됩니다. 이 조합은 데이터를 그룹별로 묶어 각 그룹의 행 개수를 손쉽게 집계할 수 있게 해줍니다.1. 테이블 생성하기먼저 예제로 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable1818 ( Id int, Name varchar(20) ); Query OK, 0 rows affected (0.00 sec)2. 샘플 데이터 삽입하

  16. MySQL에서 오늘 날짜에 등록한 사용자 수 조회하기

    MySQL에서 현재 날짜(오늘)에 등록한 사용자 수를 확인하려면 COUNT() 함수와 GROUP BY MONTH() 절을 함께 사용하면 됩니다. 그리고 현재 날짜와 비교할 때는 CURRENT_DATE() 또는 CURDATE() 함수를 활용합니다.1. 현재 날짜 확인하기먼저 CURDATE() 함수로 현재 시스템 날짜를 확인해 보겠습니다.mysql> select curdate();+------------+| curdate() |+------------+| 2019-11-30 |+------------+1 row in set (0

  17. 날짜에서 요일을 뺀 후 요일 이름과 함께 표시하는 MySQL 쿼리 방법

    MySQL에서 특정 날짜가 속한 주의 월요일을 구하고 싶다면 DATE_FORMAT() 함수를 활용할 수 있습니다. 이번 글에서는 문자열로 저장된 날짜 데이터에서 요일에 해당하는 일수를 빼고, 그 결과를 요일 이름과 함께 표시하는 방법을 단계별로 알아보겠습니다. 1. 예제 테이블 생성하기 먼저 실습에 사용할 테이블을 만들어 보겠습니다. mysql> create table DemoTable1820      (      AdmissionDate varchar(20)  

  18. MySQL 테이블 생성 시 VARCHAR 크기를 지정하지 않으면 어떻게 될까?

    아니요, 해당 쿼리는 작동하지 않습니다. MySQL에서 VARCHAR 타입의 컬럼을 정의할 때는 반드시 최대 길이(크기)를 함께 지정해야 합니다. 크기를 생략하면 구문 오류(Syntax Error)가 발생합니다. 오류 발생 상황 확인하기 실제로 VARCHAR 크기를 지정하지 않고 테이블을 생성해 보면 다음과 같은 오류가 발생합니다. mysql> create table DemoTable1821     (     Id int,    

  19. MySQL에서 CURDATE()로 현재 날짜와 일치하는 특정 날짜의 레코드 업데이트하기

    MySQL에서 현재 날짜와 일치하는 레코드 업데이트 방법MySQL에서는 CURDATE() 함수를 활용하면 오늘 날짜와 일치하는 레코드만 손쉽게 업데이트할 수 있습니다. 이번 글에서는 예제 테이블을 생성하고, 현재 날짜와 일치하는 마감일(DueDate)을 가진 레코드의 금액(Amount)을 변경하는 전체 과정을 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable1822      (      A

  20. MySQL 나눗셈 연산에서 CAST() 함수로 소수점 정밀도 높이는 방법

    MySQL에서 나눗셈을 수행하면 기본적으로 결과의 정밀도가 낮게 표시될 수 있습니다. 이런 경우 CAST() 함수를 사용해 값을 DECIMAL 타입으로 변환하면 원하는 자릿수만큼 정밀한 계산 결과를 얻을 수 있습니다. 아래에서 테이블 생성부터 쿼리 실행까지 단계별로 살펴보겠습니다.1. 예제 테이블 생성하기먼저 정수 값을 저장할 테이블을 생성합니다.mysql> create table DemoTable1823 ( Value int ); Query OK, 0 rows affected (0.00 sec)2. 샘플

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:24/229  20-컴퓨터/Page Goto:1 18 19 20 21 22 23 24 25 26 27 28 29 30