예제가 포함된 MySQL SELECT 문

MySQL의 SELECT 쿼리란 무엇입니까?

SELECT QUERY는 MySQL 데이터베이스에서 데이터를 가져오는 데 사용됩니다. 데이터베이스는 다음에 대한 데이터를 저장합니다. later 검색. MySQL Select의 목적은 데이터베이스 테이블에서 주어진 기준과 일치하는 하나 이상의 행을 반환하는 것입니다. 선택 쿼리는 PHP, Ruby와 같은 스크립팅 언어에서 사용하거나 명령 프롬프트를 통해 실행할 수 있습니다.

MySQL의 SELECT 쿼리

SQL SELECT 문 구문

가장 자주 사용되는 SQL 명령이며 다음과 같습니다.wing 일반 구문

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

여기를 클릭하십시오.

  • SELECT 데이터를 검색하려고 한다는 것을 데이터베이스에 알리는 SQL 키워드입니다.
  • [고유 | 모두] SQL SELECT 문에서 반환된 결과를 미세 조정하는 데 사용할 수 있는 선택적 키워드입니다. 아무것도 지정하지 않으면 ALL이 기본값으로 간주됩니다.
  • {*| [fieldExpression [AS newName]} 최소한 하나의 부분을 지정해야 합니다. "*"는 지정된 테이블 이름의 모든 필드를 선택하고, fieldExpression은 지정된 필드에 대해 숫자를 추가하거나 두 개의 문자열 필드를 하나로 합치는 등 일부 계산을 수행합니다.
  • FROM tableName은 필수이며 하나 이상의 테이블을 포함해야 합니다. 여러 테이블은 쉼표를 사용하여 구분하거나 JOIN 키워드를 사용하여 조인해야 합니다.
  • WHERE 조건은 선택 사항이므로 쿼리에서 반환된 결과 집합에 기준을 지정하는 데 사용할 수 있습니다.
  • GROUP BY 동일한 필드 값을 가진 레코드를 하나로 묶는 데 사용됩니다.
  • 지키는 조건은 GROUP BY 키워드를 사용할 때 기준을 지정하는 데 사용됩니다.
  • 주문 결과 집합의 정렬 순서를 지정하는 데 사용됩니다.

*

별표 기호는 테이블의 모든 열을 선택하는 데 사용됩니다. 간단한 SELECT 문의 예는 아래와 같습니다.

SELECT * FROM `members`;

위의 명령문은 멤버 테이블의 모든 필드를 선택합니다. 세미콜론은 명령문 종료입니다. 필수는 아니지만 진술을 그런 식으로 끝내는 것이 좋은 습관으로 간주됩니다.

실용적인 예

다운로드하려면 클릭하십시오. 실제 예제에 사용된 myflix DB.

.sql 파일을 다음으로 가져오는 방법을 배울 수 있습니다. MySQL 워크벤치

예제는 다음에서 수행됩니다.wing 두 개의 테이블

표 1 : 회원 테이블

회원_번호 전체 이름 성별 생일 물리적_주소 우편 주소 연락처_번호 email
1 자넷 존스 여성 21-07-1980 첫 번째 거리 플롯 번호 4 전용 가방 +0759 253 542 XNUMX janetjones@yagoo.cm
2 자넷 스미스 존스 여성 23-06-1980 멜로즈 123 NULL NULL jj@fstreet.com
3 로버트 필 남성 12-07-1989 3번가 34 NULL 12345 rm@tstreet.com
4 글로리아 윌리엄스 여성 14-02-1984 2번가 23 NULL NULL NULL

표 2 : 영화 산업 테이블

영화_ID 제목 이사 연도_출시 카테고리_ID
1 캐리비안의 해적 4 롭 마샬 2011 1
2 사라 마샬을 잊어버림 니콜라스 스톨 러 2008 2
3 엑스 맨 NULL 2008 NULL
4 코드네임 블랙 에드가 짐즈 2010 NULL
5 아빠의 어린 소녀들 NULL 2007 8
6 천사와 악마 NULL 2007 6
7 다빈치 코드 NULL 2007 6
9 허니 문너스 존 슐츠 2005 8
16 67% 유죄 NULL 2012 NULL

회원 목록 가져오기

데이터베이스에서 등록된 모든 도서관 회원의 목록을 얻고 싶다고 가정해 보겠습니다. 이를 위해 아래 표시된 스크립트를 사용할 것입니다.

SELECT * FROM `members`;

MySQL 워크벤치에서 위 스크립트를 실행하면 다음과 같은 결과가 생성됩니다.wing 결과.

회원_번호 전체 이름 성별 생일 물리적_주소 우편 주소 연락처_번호 email
1 자넷 존스 여성 21-07-1980 첫 번째 거리 플롯 번호 4 전용 가방 +0759 253 542 XNUMX janetjones@yagoo.cm
2 자넷 스미스 존스 여성 23-06-1980 멜로즈 123 NULL NULL jj@fstreet.com
3 로버트 필 남성 12-07-1989 3번가 34 NULL 12345 rm@tstreet.com
4 글로리아 윌리엄스 여성 14-02-1984 2번가 23 NULL NULL NULL

위 쿼리는 멤버 테이블의 모든 행과 열을 반환했습니다.

full_names, 성별, Physical_address 및 e만 얻는 데에만 관심이 있다고 가정해 보겠습니다.mail 필드만. 추종자wing 스크립트는 우리가 이를 달성하는 데 도움이 될 것입니다.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

MySQL 워크벤치에서 위 스크립트를 실행하면 다음과 같은 결과가 생성됩니다.wing 결과.

전체 이름 성별 물리적_주소 email
자넷 존스 여성 첫 번째 거리 플롯 번호 4 janetjones@yagoo.cm
자넷 스미스 존스 여성 멜로즈 123 jj@fstreet.com
로버트 필 남성 3번가 34 rm@tstreet.com
글로리아 윌리엄스 여성 2번가 23 NULL

영화 목록 가져오기

위의 논의에서 SELECT 문에 표현식이 사용되었다고 언급한 것을 기억하세요. 데이터베이스에서 영화 목록을 얻고 싶다고 가정해 보겠습니다. 영화 제목과 영화 감독의 이름을 한 필드에 담고 싶습니다. 영화감독 이름이 들어가야지 brackets. 또한 영화가 개봉된 연도를 알고 싶습니다. 추종자wing 스크립트는 우리가 그렇게 하는 데 도움이 됩니다.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

여기를 클릭하십시오.

  • Concat() MySQL 함수는 열 값을 함께 결합하는 데 사용됩니다.
  • “Concat (`title`, ' (', `director`, ')') 줄은 제목을 가져오고 여는 괄호와 감독의 이름을 추가한 다음 닫는 괄호를 추가합니다.

문자열 부분은 Concat() 함수에서 쉼표를 사용하여 구분됩니다.

MySQL 워크벤치에서 위 스크립트를 실행하면 다음과 같은 결과가 생성됩니다.wing 결과 집합.

Concat(`제목`, ' (', `감독`, ')') 연도_출시
캐리비안의 해적 4(롭 마샬) 2011
사라 마샬을 잊음(니콜라스 스톨러) 2008
NULL 2008
코드네임 블랙(에드가 짐즈) 2010
NULL 2007
NULL 2007
NULL 2007
허니 무너(존 슐츠) 2005
NULL 2012

별칭 필드 이름

위의 예에서는 결과의 필드 이름으로 연결 코드를 반환했습니다. 결과 집합에 좀 더 설명적인 필드 이름을 사용하고 싶다고 가정해 보겠습니다. 이를 달성하기 위해 열 별칭 이름을 사용합니다. 추종자wing 열 별칭 이름의 기본 구문입니다.

SELECT `column_name|value|expression` [AS] `alias_name`;

여기를 클릭하십시오.

  • "SELECT ` 컬럼 이름|값|표현식 `" 열 이름, 값 또는 표현식이 될 수 있는 일반 SELECT 문입니다.
  • "[처럼]" 반환될 표현식, 값 또는 필드 이름을 나타내는 별칭 이름 앞의 선택적 키워드입니다.
  • “`별칭_이름`” 결과 집합에 필드 이름으로 반환하려는 별칭 이름입니다.

더 의미 있는 열 이름을 사용한 위 쿼리

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

우리는 다음을 얻습니다wing 결과

콘캣 연도_출시
캐리비안의 해적 4(롭 마샬) 2011
사라 마샬을 잊음(니콜라스 스톨러) 2008
NULL 2008
코드네임 블랙(에드가 짐즈) 2010
NULL 2007
NULL 2007
NULL 2007
허니 무너(존 슐츠) 2005
NULL 2012

회원 목록을 가져오는 중wing 태어난 해

모든 구성원의 목록을 얻고 싶다고 가정해 보겠습니다.wing 회원번호, 성명, 생년월일의 경우 LEFT 문자열 함수를 사용하여 생년월일 필드에서 생년월일을 추출할 수 있습니다. 아래에 표시된 스크립트는 이를 수행하는 데 도움이 됩니다.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

여기를 클릭하십시오.

  • “LEFT(`date_of_birth`,4)” 전에, LEFT 문자열 함수 생년월일을 매개변수로 받아들이고 왼쪽에서 4자만 반환합니다.
  • “AS `출생_연도`" 이다 열 별칭 이름 이는 결과에 반환됩니다. 참고하세요 AS 키워드는 선택사항입니다., 생략해도 쿼리는 계속 작동합니다.

myflixdb에 대해 MySQL 워크벤치에서 위 쿼리를 실행하면 아래와 같은 결과가 표시됩니다.

회원_번호 전체 이름 year_of_birth
1 자넷 존스 1980
2 자넷 스미스 존스 1980
3 로버트 필 1989
4 글로리아 윌리엄스 1984

MySQL Workbench를 사용하는 SQL

이제 MySQL 워크벤치를 사용하여 카테고리 테이블의 모든 필드 이름을 표시하는 스크립트를 생성하겠습니다.

1. 카테고리 테이블을 마우스 오른쪽 버튼으로 클릭하세요. "행 선택 - 1000개 제한"을 클릭하세요.

2. MySQL 워크벤치는 자동으로 SQL 쿼리를 생성하고 편집기에 붙여넣습니다.

3. 쿼리 결과가 표시됩니다.

MySQL Workbench를 사용하는 SQL

우리는 SELECT 문을 직접 작성하지 않았습니다. MySQL Workbench가 우리를 위해 생성했습니다.

MySQL Workbench가 있는데 왜 SELECT SQL 명령을 사용합니까?

이제 MySQL 워크벤치와 같은 도구를 사용하여 SQL 언어에 대한 지식 없이도 동일한 결과를 얻을 수 있는데 데이터베이스에서 데이터를 쿼리하는 SQL SELECT 명령을 배우는 이유가 무엇인지 생각할 수 있습니다. 물론 그럴 수도 있지만 SELECT 명령 사용법 배우기 당신에게 더 많은 것을 제공합니다 유연성제어 너의 SQL SELECT 문.

MySQL 워크벤치는 "사례별 쿼리"QBE 도구. 사용자 생산성을 높이기 위해 SQL 문을 더 빠르게 생성하는 데 도움을 주기 위한 것입니다.

SQL SELECT 명령을 배우면 다음을 만들 수 있습니다. COMplex 쿼리 이는 MySQL 워크벤치와 같은 Query by example 유틸리티를 사용하여 쉽게 생성할 수 없습니다.

생산성을 향상하려면 다음을 수행하십시오. MySQL Workbench를 사용하여 코드 생성 그때 사용자 정의 거기에 귀하의 요구 사항을 충족. 이는 SQL 문이 어떻게 작동하는지 이해하는 경우에만 발생할 수 있습니다!

예제가 포함된 MySQL SELECT 문

요약

  • SQL SELECT 키워드는 데이터베이스에서 데이터를 쿼리하는 데 사용되며 가장 일반적으로 사용되는 명령입니다.
  • 가장 간단한 형식은 "SELECT * FROM tableName;" 구문을 사용합니다.
  • 표현식은 select 문에서도 사용할 수 있습니다. 예: "판매량 + 가격 선택"
  • SQL SELECT 명령에는 WHERE, GROUP BY, HAVING, ORDER BY와 같은 다른 선택적 매개변수도 있을 수 있습니다. 그들은 논의될 것이다 later.
  • MySQL 워크벤치는 SQL 문을 개발하고 실행하며 동일한 창에서 출력 결과를 생성하는 데 도움을 줄 수 있습니다.