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

MySQL

  1. MySQL에서 GROUP BY와 HAVING으로 중복 값의 최대 날짜 조회하기

    데이터베이스 작업을 하다 보면 중복된 값이 존재하는 행들 중에서 가장 최근(최대) 날짜만 조회해야 하는 경우가 자주 있습니다. 이럴 때는 SQL의 GROUP BY 절과 HAVING 절을 함께 사용하면 간단하게 해결할 수 있습니다.이번 글에서는 실제 예제를 통해 학생 이름별로 중복된 데이터를 찾고, 각 이름에 해당하는 마감일(DueDate) 중 가장 늦은 날짜를 출력하는 방법을 단계별로 살펴보겠습니다.1. 예제 테이블 생성먼저 실습에 사용할 테이블을 생성합니다. 학생 이름(StudentName)과 마감일(DueDate) 두 개의 컬럼

  2. MySQL에서 특정 숫자가 포함된 값 검색하기: SUBSTRING_INDEX() 활용법

    MySQL에서 특정 숫자가 포함된 값을 검색하고 싶다면 SUBSTRING_INDEX() 함수를 활용할 수 있습니다. 이 함수는 LIKE 연산자와 함께 사용하면 원하는 숫자의 위치를 기준으로 결과를 정렬하는 것도 가능합니다.실제 동작 과정을 예제를 통해 단계별로 살펴보겠습니다.1. 테이블 생성먼저 숫자 데이터를 저장할 테이블을 생성합니다.mysql> create table DemoTable (Number varchar(100));Query OK, 0 rows affected (0.60 sec)2. 샘플 데이터 삽입INSERT 명

  3. 단일 MySQL 쿼리로 'Jone Deo' 또는 'Deo Jone' 레코드 조회하는 방법

    개요 MySQL에서 이름의 단어 순서와 상관없이 Jone Deo 또는 Deo Jone 같은 레코드를 한 번의 쿼리로 조회해야 할 때가 있습니다. 이런 경우 LIKE 절과 SUBSTRING_INDEX() 함수를 조합하면 손쉽게 해결할 수 있습니다. 1단계: 테이블 생성 먼저 예제에 사용할 테이블을 만들어 보겠습니다. mysql> create table DemoTable -> ( -> ClientName varchar(100) -> ); Query OK, 0 rows affected (0.8

  4. MySQL 단일 쿼리로 컬럼과 인덱스 동시에 추가하는 방법

    MySQL에서 기존 테이블에 새로운 컬럼과 해당 컬럼의 인덱스를 한 번의 쿼리로 동시에 추가하려면 ALTER TABLE 문과 ADD 절을 활용하면 됩니다.기본 문법ALTER TABLE yourTableNameADD yourColumnName DATETIME DEFAULT NOW(),ADD INDEX(yourColumnName);위 문법처럼 ADD 절을 여러 번 사용해 컬럼 추가와 인덱스 생성 작업을 하나의 쿼리로 처리할 수 있습니다.예제 테이블 생성먼저 실습용 테이블을 만들어 보겠습니다.mysql> CREATE TABLE De

  5. MySQL에서 숫자를 사용해 varchar 열을 검색하는 방법

    varchar 타입의 열에 저장된 값이 숫자와 특수문자가 섞여 있을 때, 숫자만 가지고도 해당 값을 검색할 수 있습니다. 이때 MySQL의 INSERT() 함수를 활용하면 되는데, 이 함수는 다음과 같은 매개변수를 가집니다.매개변수설명str수정 대상이 되는 문자열positionstr2를 삽입할 위치number대체할 문자 수str2str에 삽입할 문자열예제 테이블 생성먼저 테이블을 생성해 보겠습니다.mysql> create table DemoTable -> ( -> Code varchar(100) -&

  6. MySQL에서 특정 값 하나를 제외하고 내림차순(DESC)으로 정렬하는 방법

    MySQL에서 데이터를 내림차순으로 정렬하려면 ORDER BY 절과 DESC 키워드를 사용합니다. 그런데 만약 특정 값 하나만 제외한 나머지 모든 값을 정렬하고 싶다면 어떻게 해야 할까요? 이 경우 비교 연산자(<>, 같지 않음)를 활용하면 간단하게 해결할 수 있습니다.이 글에서는 Adam이라는 이름 하나만 맨 뒤로 보내고, 나머지 이름들은 알파벳 순으로 정렬하는 방법을 단계별로 알아보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable -&

  7. MySQL에서 음수는 내림차순으로, 양수는 오름차순으로 정렬하는 쿼리 작성 방법

    개요MySQL에서 데이터를 정렬할 때 일반적인 ORDER BY 절만으로는 음수 값은 내림차순으로, 양수 값은 오름차순으로 정렬하는 것이 불가능합니다. 이런 경우 UNION 연산자를 활용하면 원하는 정렬 순서를 손쉽게 구현할 수 있습니다.기본 아이디어는 다음과 같습니다.먼저 0인 값을 표시합니다.그다음 음수 값을 내림차순(큰 값부터)으로 정렬합니다.마지막으로 양수 값을 오름차순(작은 값부터)으로 정렬합니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable-> (

  8. MySQL에서 특정 열의 값을 증가시키는 UPDATE 쿼리 사용법

    MySQL에서는 UPDATE 문과 산술 연산자를 활용하면 특정 행의 열 값을 손쉽게 증가시킬 수 있습니다. 이 글에서는 실제 예제를 통해 테이블 생성부터 데이터 삽입, 값 증가까지 전 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable-> (-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,-> Name varchar(100),-> Score int-> );Query OK, 0

  9. MySQL에서 두 열(Column) 간의 데이터를 교환하는 방법

    MySQL에서 두 열 사이의 데이터를 서로 맞바꾸려면 사용자 정의 변수(user-defined variable) 개념을 활용하면 됩니다. 이 글에서는 예제 테이블을 만들고, Name1 열과 Name2 열의 값을 실제로 교환하는 과정을 단계별로 살펴보겠습니다.1. 예제 테이블 생성먼저 두 개의 문자열 열을 가진 테이블을 생성합니다.mysql> create table DemoTable-> (-> Name1 varchar(100),-> Name2 varchar(100)-> );Query OK, 0 rows af

  10. MySQL 저장 프로시저에서 열 값 반환하기: OUT 매개변수 완벽 가이드

    MySQL에서 저장 프로시저(Stored Procedure)는 OUT 매개변수를 활용하면 조회한 열 값을 외부 변수로 반환할 수 있습니다. 이 글에서는 테이블 생성부터 프로시저 작성, 호출, 결과 확인까지 전 과정을 단계별로 살펴보겠습니다. 1. 테이블 생성하기 먼저 예제에 사용할 테이블을 생성합니다. mysql> create table DemoTable -> ( -> Id int, -> Score int -> ); Query OK, 0 rows affected (0.69 s

  11. MySQL에서 문자열이 10개 이상의 단어를 포함할 경우 점을 추가하는 쿼리 작성 방법

    문자열이 10개 이상의 단어를 포함하고 있을 때 뒤에 점(......)을 추가하려면 CASE 문과 SUBSTRING_INDEX() 함수를 함께 활용하면 됩니다. 이번 글에서는 실제 예제를 통해 그 과정을 단계별로 살펴보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable -> ( -> Title text -> ); Query OK, 0 rows affected (0.61 sec)2. 데이터 삽입하기INSERT 명령을 사용하여 테이블에 샘플 데이

  12. MySQL 사용자 정의 변수(@변수)를 활용해 특정 백분율만큼 필드 값 증가시키는 방법

    MySQL에서는 사용자 정의 변수(user-defined variable)를 활용하면 테이블의 특정 필드 값을 지정한 백분율만큼 손쉽게 증가시킬 수 있습니다. 예를 들어 금액(Amount) 필드의 모든 값을 10%씩 인상하고 싶다면, 변수에 비율을 저장한 뒤 UPDATE 문에서 활용하면 됩니다.1. 샘플 테이블 생성먼저 실습에 사용할 테이블을 생성합니다.mysql> create table DemoTable-> (-> Amount int-> );Query OK, 0 rows affected (0.99 sec)2.

  13. MySQL에서 특정 월을 기준으로 테이블 데이터 조회하는 방법

    MySQL에서 MONTH() 함수를 사용하면 날짜 데이터를 특정 월을 기준으로 손쉽게 조회할 수 있습니다. 이 글에서는 예제 테이블을 만들고, MONTH() 함수를 활용해 원하는 월의 데이터만 추출하는 방법을 단계별로 살펴보겠습니다.1. 예제 테이블 생성먼저 사용자 게시글 정보를 저장할 테이블을 생성합니다. 테이블에는 아이디, 사용자 이름, 게시일, 좋아요 수 컬럼이 포함됩니다.mysql> create table DemoTable -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY K

  14. MySQL에서 LIKE와 OR 연산자를 결합해 여러 패턴 검색하기

    MySQL에서는 LIKE 연산자와 OR 연산자를 조합하면, 하나의 쿼리에서 여러 개의 패턴 조건을 동시에 검색할 수 있습니다. 이는 IN 절처럼 여러 값을 나열하면서 부분 일치(패턴 매칭)까지 처리해야 할 때 유용하게 활용됩니다.먼저 실습용 테이블을 생성해 보겠습니다.mysql> create table DemoTable-> (-> SubjectTitle text-> );Query OK, 0 rows affected (0.68 sec)INSERT 명령을 사용해 몇 개의 레코드를 삽입합니다.mysql> ins

  15. MySQL 테이블에서 특정 문자열을 검색하는 방법

    MySQL 테이블에서 특정 문자열과 정확히 일치하는 데이터를 찾으려면 WHERE 절과 함께 등호(=) 연산자를 사용하면 됩니다. 기본 문법은 다음과 같습니다.select *from yourTableName where yourColumnName=yourValue;예제 테이블 생성하기먼저 실습에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable-> (-> FirstName varchar(100),-> LastName varchar(100)-> );Query OK, 0 ro

  16. MySQL에서 여러 행을 업데이트하며 왼쪽 패딩(LPAD) 적용하는 방법

    MySQL에서 LPAD() 함수를 사용하면 값의 왼쪽에 특정 문자를 채워 원하는 길이로 맞출 수 있습니다. 이 글에서는 조건에 맞는 여러 행을 한 번에 업데이트하면서 왼쪽 패딩을 적용하는 방법을 예제와 함께 살펴보겠습니다.1. 테이블 생성먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable -> ( -> Number int -> );Query OK, 0 rows affected (2.26 sec)2. 데이터 삽입insert 명령을 사용하여 테이블에 샘플 레

  17. 열 이름만으로 MySQL 데이터베이스에서 해당 열이 포함된 테이블 찾는 방법

    MySQL에서 특정 열이 포함된 테이블 찾기여러 개의 데이터베이스와 테이블이 운영되는 환경에서는 특정 열(Column)이 어느 테이블에 들어 있는지 확인해야 하는 경우가 종종 발생합니다. 이럴 때 테이블을 하나씩 열어볼 필요 없이, information_schema.columns 뷰를 조회하고 COLUMN_NAME 조건을 활용하면 단 한 번의 쿼리로 원하는 열의 위치를 파악할 수 있습니다.먼저 예제에 사용할 테이블을 생성해 보겠습니다.mysql> create table DemoTable -> ( -> Cu

  18. MySQL에서 여러 열을 기준으로 행 정렬하는 방법 (ORDER BY 활용)

    MySQL에서 여러 열을 기준으로 행 정렬하기MySQL에서 ORDER BY 절에 여러 개의 열을 쉼표(,)로 구분하여 지정하면, 첫 번째 열을 기준으로 먼저 정렬한 후, 값이 중복되는 경우 두 번째 열을 기준으로 추가 정렬합니다. 아래 예제를 통해 단계별로 살펴보겠습니다.1단계: 테이블 생성먼저 테이블을 생성합니다.mysql> create table DemoTable    -> (    -> FirstName varchar(20), &n

  19. MySQL에서 특정 단어를 무시하고 열 정렬하는 방법

    개요데이터베이스 작업을 하다 보면 특정 접두사나 불필요한 단어가 포함된 문자열을 정렬해야 하는 경우가 있습니다. 이 글에서는 MySQL에서 TRIM, REPLACE, LOWER 함수를 조합하여 특정 단어를 무시하고 열을 정렬하는 방법을 예제와 함께 알아보겠습니다.1. 테이블 생성하기먼저 예제에 사용할 테이블을 생성합니다.mysql> create table DemoTable-> (-> Name text-> );Query OK, 0 rows affected (1.31 sec)2. 레코드 삽입하기insert 명령을

  20. MySQL에서 데이터베이스의 모든 테이블에서 특정 열(컬럼) 찾는 방법

    데이터베이스 내 여러 테이블 중 어느 테이블에 특정 컬럼이 존재하는지 확인해야 할 때가 있습니다. 이럴 때 INFORMATION_SCHEMA.COLUMNS 뷰를 활용하면 손쉽게 해결할 수 있습니다. 핵심은 COLUMN_NAME 조건에 LIKE 연산자를 사용해 원하는 컬럼명을 지정하는 것입니다.기본 쿼리 구문아래 예시는 web이라는 스키마(데이터베이스) 안에서 StudentName이라는 이름을 가진 컬럼이 포함된 모든 테이블을 조회하는 방법입니다.mysql> SELECT TABLE_NAME, COLUMN_NAME, DATA_TY

Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:88/229  20-컴퓨터/Page Goto:1 82 83 84 85 86 87 88 89 90 91 92 93 94