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

MySQL

  1. MySQL에서 양수·음수 값을 기준으로 GROUP BY 쿼리 작성하는 방법

    MySQL에서는 GROUP BY 절에 단순히 컬럼명만이 아니라 표현식(expression)도 사용할 수 있습니다. 이를 활용하면 컬럼 값에 음수 부호(-)를 붙인 형태로 그룹화할 수 있습니다.기본 문법SELECT 쿼리에서 양수 또는 음수 값을 기준으로 GROUP BY를 수행하는 기본 문법은 다음과 같습니다.select *from yourTableName group by -yourColumnName;예제 테이블 생성먼저 실습에 사용할 테이블을 생성합니다.mysql> create table DemoTable (Value int);

  2. MySQL 결과에서 테이블 이름에 별칭(Alias)을 지정하는 방법

    MySQL 결과에서 테이블 이름에 별칭(Alias) 지정하기MySQL에서 SHOW TABLES 대신 INFORMATION_SCHEMA를 조회할 때, AS 명령어를 사용하면 결과의 컬럼 헤더에 원하는 별칭을 지정할 수 있습니다. 이를 통해 출력되는 컬럼 이름을 더 읽기 쉽고 의미 있게 표현할 수 있습니다.기본 문법별칭을 지정하는 기본 문법은 다음과 같습니다.SELECT TABLE_NAME AS anyAliasNameFROM INFORMATION_SCHEMA.TABLESWHERE TABLE_SCHEMA = DATABASE();여기서 I

  3. MySQL에서 날짜별 일 수를 계산하는 방법

    MySQL에서 날짜별로 일 수를 계산하는 방법MySQL에서 datetime 타입의 날짜 컬럼을 기준으로 각 날짜별 합계를 구하려면 DATE() 함수와 SUM() 함수를 GROUP BY 절과 함께 사용하면 됩니다. 이번 글에서는 예제 테이블을 만들고 날짜별 데이터 합계를 계산하는 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 datetime 타입의 배송일(ShippingDate) 컬럼과 해당 날짜의 개수(CountOfDate)를 저장할 int 타입 컬럼을 가진 테이블을 생성합니다.mysql> create table De

  4. MySQL DATETIME 필드에서 DATE 조건으로 오늘 날짜의 레코드 조회하기

    MySQL에서 DATETIME 타입으로 저장된 데이터 중에서 오늘 날짜에 해당하는 레코드만 조회하고 싶은 경우가 자주 있습니다. 이 글에서는 DATE() 함수와 CURDATE(), DATE_SUB() 함수를 활용하여 DATETIME 필드에서 오늘의 레코드를 추출하는 방법을 예제와 함께 살펴보겠습니다.1. DATETIME 타입 컬럼을 가진 테이블 생성먼저 DATETIME 타입의 컬럼을 하나 포함하는 테이블을 생성해 보겠습니다.mysql> create table DemoTable ( Id int NOT NULL AUTO_I

  5. MySQL에서 COUNT(*)로 여러 행 대신 단일 행을 반환하는 방법

    중복된 여러 값을 하나의 결과로 집계하여 개수를 확인하려면 GROUP BY 절과 COUNT(*) 함수를 함께 사용해야 합니다. GROUP BY는 동일한 값들을 하나의 그룹으로 묶어주고, COUNT(*)는 그 그룹의 개수를 반환합니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable (Value int); Query OK, 0 rows affected (0.55 sec)2. 데이터 삽입하기INSERT 명령을 사용하여 테이블에 샘플 레코드를 삽입합니다. 일부러 같은 값

  6. MySQL에서 MAX()와 CAST()로 varchar 유형 열의 최대 숫자 값 구하기

    MAX() 함수 안에서 CAST()를 함께 사용하면, varchar 유형의 열에 저장된 값을 숫자로 변환하여 최대값을 구할 수 있습니다. 아래 예제를 통해 단계별로 살펴보겠습니다.1. 테이블 생성먼저 테이블을 생성합니다. 여기서는 varchar 유형의 열을 하나 포함합니다.mysql> create table DemoTable (    UserMarks varchar(20) ); Query OK, 0 rows affected (0.77 sec)2. 레코드 삽입insert 명령을 사용해 테이블에 여러 개의 레코드

  7. MySQL 데이터베이스의 모든 테이블에 쿼리 적용하는 방법

    INFORMATION_SCHEMA.TABLES를 활용한 테이블별 쿼리 적용데이터베이스 내의 각 테이블에 MySQL 쿼리를 적용하려면 INFORMATION_SCHEMA.TABLES를 활용할 수 있습니다. 이 시스템 뷰는 현재 MySQL 서버에 존재하는 모든 데이터베이스와 테이블의 메타데이터를 담고 있어, 테이블 정보를 손쉽게 조회하고 집계할 수 있습니다.기본 문법다음은 INFORMATION_SCHEMA.TABLES를 사용하여 특정 데이터베이스의 전체 테이블 행 수를 합산하는 기본 문법입니다.SELECT SUM(TABLE_ROWS) A

  8. MySQL에서 오늘 날짜를 YYYY-MM-DD 형식으로 가져오는 방법

    MySQL에서 오늘 날짜를 YYYY-MM-DD 형식으로 가져오려면 CURDATE() 함수를 사용하면 됩니다. 이 함수는 시간 정보 없이 날짜만 문자열 형태로 반환합니다.CURDATE() 함수로 현재 날짜 조회하기다음 쿼리를 실행하면 오늘 날짜를 확인할 수 있습니다.mysql> SELECT CURDATE();실행 결과는 다음과 같습니다.+------------+ | CURDATE() | +------------+ | 2019-04-09 | +------------+ 1 row in set (0.00 sec)NOW() 함수와 D

  9. MySQL에서 문자열의 마지막 세 글자만 추출하는 쿼리 방법

    문자열에서 마지막 세 글자만 추출하고 싶다면 MySQL의 SUBSTR() 함수를 사용하면 됩니다. 핵심은 위치 값에 음수를 지정하는 것인데, 음수를 넣으면 문자열의 끝에서부터 거꾸로 계산하여 해당 위치 이후의 문자들을 반환합니다.실제 동작 과정을 예제 테이블을 통해 단계별로 살펴보겠습니다.1. 예제 테이블 생성먼저 테스트에 사용할 테이블을 생성합니다:mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varcha

  10. MySQL 저장 프로시저를 활용해 두 개의 테이블에 동시에 레코드 삽입하기

    MySQL에서 저장 프로시저로 두 테이블에 레코드 삽입하기네, 가능합니다. MySQL에서는 저장 프로시저(Stored Procedure)를 활용하면 하나의 호출만으로 두 개 이상의 테이블에 레코드를 삽입할 수 있습니다. 실제 예제를 통해 단계별로 살펴보겠습니다.1단계: 첫 번째 테이블 생성먼저 학생 정보를 저장할 테이블을 생성합니다.mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentFirstName va

  11. MySQL 기존 테이블에 새로운 ENUM(열거형) 컬럼 추가하는 방법

    이미 생성된 MySQL 테이블에 새로운 ENUM(열거형) 컬럼을 추가하려면 ALTER TABLE 명령어를 사용하면 됩니다. 기본 문법은 다음과 같습니다.ALTER TABLE yourTableName ADD yourColumnName ENUM(yourValue1,yourValue2....N) NOT NULL;1. 예제 테이블 생성하기먼저 실습에 사용할 테이블을 만들어 보겠습니다.mysql> create table DemoTable ( StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY

  12. MySQL에서 컬럼 기본값을 수정하는 방법 (ALTER TABLE 활용법)

    MySQL에서 컬럼 기본값 수정하기MySQL에서는 ALTER TABLE 문을 사용하여 기존 테이블의 컬럼 기본값(DEFAULT)을 손쉽게 변경할 수 있습니다. 이 글에서는 실제 예제를 통해 그 과정을 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 기본값이 설정된 테이블을 생성합니다.mysql> create table DemoTable(    UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    UserName varc

  13. MySQL 단일 쿼리로 최댓값과 최솟값 한 번에 조회하는 방법

    단일 쿼리에서 최댓값과 최솟값 구하기MySQL에서 하나의 쿼리만으로 최댓값과 최솟값을 동시에 조회하려면 집계 함수 MIN()과 MAX()를 함께 사용하면 됩니다. 이 두 함수는 각각 지정한 컬럼의 가장 작은 값과 가장 큰 값을 반환하며, 하나의 SELECT 문 안에서 자유롭게 조합할 수 있습니다.실제 예제를 통해 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable (     FirstValue int, &nb

  14. Windows에서 MySQL 테이블 데이터 저장 위치 확인하는 방법

    Windows에서 MySQL 테이블 데이터는 어디에 저장될까?MySQL을 사용하다 보면 테이블 데이터가 실제로 디스크의 어느 위치에 저장되어 있는지 궁금할 때가 있습니다. 다행히도 간단한 쿼리 한 줄로 데이터 디렉터리 경로를 손쉽게 확인할 수 있습니다.방법 1: @@datadir 시스템 변수 조회MySQL 테이블 데이터의 저장 위치를 확인하는 가장 간단한 방법은 @@datadir 시스템 변수를 조회하는 것입니다.select @@datadir;방법 2: SHOW VARIABLES 명령 사용SHOW VARIABLES 명령을 사용해도 동

  15. MySQL에서 쉼표로 구분된 목록의 첫 번째 요소 추출하기 – SUBSTRING_INDEX() 활용법

    MySQL에서 쉼표로 구분된 목록의 첫 번째 요소 추출하기 쉼표(,)로 구분된 목록(CSV 값)에서 첫 번째 요소만 추출하고 싶다면 MySQL의 SUBSTRING_INDEX() 함수를 사용하면 간단하게 해결할 수 있습니다. 이 함수는 지정한 구분자를 기준으로 문자열을 잘라 원하는 부분만 반환해 줍니다. 먼저 실습용 테이블을 생성해 보겠습니다. mysql> create table DemoTable ( CSV_Value varchar(200) ); Query OK, 0 rows affected (0.81 sec) 다음은 I

  16. MySQL에서 월 이름(MonthName)과 연도(Year)만 반환하도록 날짜 형식을 지정하는 방법

    MySQL에서 날짜를 월 이름(MonthName)과 연도(Year) 형식으로 출력하려면 DATE_FORMAT() 함수를 사용하면 됩니다. 이 함수는 다양한 형식 지정자(specifier)를 지원하며, 그중 %M은 월 이름, %Y는 4자리 연도를 나타냅니다.실제 동작 과정을 단계별로 살펴보겠습니다.1. 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, AdmissionDate da

  17. MySQL WHERE 절로 특정 범위의 데이터 조회하는 방법 완벽 가이드

    MySQL에서 특정 범위의 값을 선택하는 방법MySQL 테이블에서 원하는 범위의 값을 조회하려면 WHERE 절=, <= 등)와 논리 연산자(AND)를 조합하면 여러 조건을 동시에 만족하는 레코드만 정확하게 추출할 수 있습니다.이번 글에서는 실제 예제를 통해 고객 나이 범위와 정기 고객 여부를 함께 필터링하는 방법을 단계별로 살펴보겠습니다.1단계: 테이블 생성하기먼저 예제로 사용할 테이블을 생성합니다. 아래 쿼리는 고객 ID, 이름, 나이, 정기 고객 여부를 저장하는 테이블을 만듭니다.mysql> create table Demo

  18. MySQL 쿼리로 생년월일(BirthDate) 열에서 나이 계산하는 방법

    MySQL에서 BirthDate(생년월일) 열로 나이 계산하기MySQL 쿼리에서 BirthDate(생년월일) 열을 활용해 나이를 구하려면 DATEDIFF() 함수를 사용하면 됩니다. DATEDIFF()는 두 날짜 사이의 일수 차이를 반환하는 함수로, 현재 날짜와 생년월일의 차이를 365.25로 나누어 대략적인 나이(연 단위)를 계산할 수 있습니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable (    Id int NOT NULL AUTO_INCREMENT

  19. MySQL에서 LIKE 연산자로 특정 문자로 시작하는 이름 조회하기

    MySQL LIKE로 특정 문자로 시작하는 이름 가져오기MySQL에서 특정 문자로 시작하는 이름을 조회하려면 LIKE 연산자와 와일드카드 문자 %를 함께 사용하면 됩니다. 예를 들어 C% 패턴은 C로 시작하는 모든 문자열과 일치합니다.실제 동작 과정을 단계별로 살펴보겠습니다.1단계: 테이블 생성하기먼저 학생 이름을 저장할 테이블을 생성합니다.mysql> create table DemoTable ( StudentFirstName varchar(20) ); Query OK, 0 rows affected (1.01 sec)2

  20. MySQL에서 문자열을 24시간 날짜/시간 형식으로 변환하는 방법

    MySQL에서 문자열을 24시간 날짜/시간(datetime) 형식으로 변환하려면 STR_TO_DATE() 함수를 사용하면 됩니다. 이 함수의 두 번째 매개변수로 아래와 같은 날짜/시간 형식 지정자를 전달합니다.%Y-%m-%d %H:%i:%s각 형식 지정자의 의미는 다음과 같습니다. %Y는 4자리 연도, %m은 월, %d는 일, %H는 24시간제 시간, %i는 분, %s는 초를 나타냅니다.기본 문법SELECT STR_TO_DATE(yourColumnName, %Y-%m-%d %H:%i:%s) FROM yourTableName;예제:

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:115/229  20-컴퓨터/Page Goto:1 109 110 111 112 113 114 115 116 117 118 119 120 121