실제로 MySQL 하위 쿼리가 FROM 절에서 시작되면 생성된 결과 집합을 파생 테이블이라고 합니다. 파생 테이블을 생성하는 이러한 종류의 하위 쿼리를 구체화된 하위 쿼리라고 합니다. cars 테이블의 데이터를 사용하는 다음 예의 도움으로 이해할 수 있습니다. - mysql> Select * from Cars; +------+--------------+---------+ | ID | Name | Price | +------+--------------+---------+ | 1 | Nexa
서브 쿼리가 다른 하위 쿼리 안에 중첩되어 있으면 이를 중첩 하위 쿼리라고 합니다. 이해를 돕기 위해 다음 테이블 데이터에서 중첩된 하위 쿼리를 생성하고 있습니다 - 예약에서 * 선택;+------ +-------------+------------+| 아이디 | 고객 아이디 | 일 |+--------+-------------+------------+| 1 | 1 | 2017-12-30 || 2 | 2 | 2017-12-28 || 3 | 2 | 2017-12-29 || 4 | 1 | 2017-12-25 || 5 | 3 | 2017-
단일 행 하위 쿼리 단일 행 하위 쿼리는 외부 쿼리의 결과가 알 수 없는 단일 값을 기반으로 할 때 사용됩니다. 이 쿼리 유형은 공식적으로 단일 행이라고 하지만 이름은 쿼리가 여러 열을 반환하지만 결과의 행은 하나만 반환함을 의미합니다. 그러나 단일 행 하위 쿼리는 외부 쿼리에 대해 하나의 열로만 구성된 결과의 한 행만 반환할 수 있습니다. 아래 SELECT 쿼리에서 내부 MySQL은 회사의 최소 급여와 같은 하나의 행만 반환합니다. 그런 다음 이 값을 사용하여 모든 직원의 급여를 비교하고 급여가 최저 급여와 동일한 직원만 표시
여러 줄 쿼리의 첫 번째 줄을 작성한 후 MySQL은 에서 즉시 변경됩니다. →로. 그것의 도움으로 우리는 MySQL이 아직 완전한 문장을 보지 못했고 나머지를 기다리고 있다는 표시를 얻었기 때문에 중요합니다. 아래 예를 고려하십시오. mysql> Select * -> from -> stock_item; 첫 번째 줄, 즉 Select *를 작성한 후 Mysql이 프롬프트를 변경한다는 것은 아직 상태가 완료되지 않았음을 의미합니다. 세미콜론 뒤에 MySQL은 문이 완
여러 줄 쿼리의 첫 번째 줄을 작성한 후 MySQL은 프롬프트를 변경합니다. 다음 표는 다양한 MySQL 프롬프트를 보여주며 그 의미는 - 프롬트 의미 이는 MySQL이 새 명령을 사용할 준비가 되었음을 의미합니다. → MySQL이 여러 줄 명령의 다음 줄을 기다리고 있음을 의미합니다. 이는 MySQL이 작은 따옴표로 시작하는 문자열의 완성을 기다리며 다음 줄을 기다리고 있음을 의미합니다. 이는 MySQL이 큰따옴표로 시작하는 문자열의 완성을 기다리며 다음 줄을 기다리고 있음을 의미합니다
MySQL 문의 끝에 \G 또는 \g 옵션을 사용하면 세미콜론 없이 실행할 수 있습니다. 아래 예를 고려하십시오 - mysql> Select * from Stock_item\G *************************** 1. row *************************** item_name: Calculator Value: 15 Quantity: 89 *************************** 2. row *************************** item_na
모두, ANY, SOME, IN 연산자는 값을 하위 쿼리에서 반환된 모든 값과 비교합니다. 이러한 모든 연산자는 비교 연산자 뒤에 와야 합니다. 이러한 연산자를 MySQL 하위 쿼리와 함께 사용하는 구문은 다음과 같습니다. - ALL 사용을 위한 구문 연산자 comparison_operator ALL(하위 쿼리) ANY 사용을 위한 구문 연산자 comparison_operator ANY(하위 쿼리) SOME 사용을 위한 구문 비교 연산자 SOME(하위 쿼리) IN 사용 구문 피연산자 비교 연산자 IN(하위 쿼리) 예시 ALL, A
다음은 MySQL DESCRIBE의 동의어 명령문입니다. 즉, DESCRIBE에서 얻은 것과 동일한 종류의 정보/구조를 테이블에서 얻을 수 있는 명령문입니다. - 설명문 EXPLAIN은 DESCRIBE 문의 동의어입니다. 구문도 DESCRIBE 문과 유사합니다. 다음 예를 고려하십시오 - mysql> Explain Employee; +-------+-------------+------+-----+---------+------------------+ | Field | Type |
SHOW FULL COLUMNS 문을 사용하면 DESCRIBE, EXPLAIN 및 SHOW COLUMNS MySQL 문에서 얻은 정보보다 테이블의 열에 대한 더 많은 정보를 얻을 수 있습니다. 구문 SHOW FULL COLUMNS from Table_name; 예시 mysql> SHOW FULL COLUMNS FROM EMPLOYEE\G; *************************** 1. row *************************** Field: ID  
우리가 알고 있듯이 EXPLAIN 문은 전체 테이블의 정보/구조를 제공합니다. 테이블 이름 및 열 이름과 함께 EXPLAIN 문을 사용하여 해당 열에 대한 정보를 얻을 수 있습니다. 구문 EXPLAIN table_name col_name; 예 1 mysql> EXPLAIN employee ID; +-------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra  
ORDER BY 절을 사용하여 둘 이상의 열 이름을 지정하여 단일 쿼리에서 여러 열을 정렬할 수 있습니다. 위의 구문은 다음과 같습니다 - 구문 Select Col1,Col2,… from table_name ORDER BY Col1, Col2,… 예시 Student라는 이름의 테이블을 Name 및 RollNo 열로 정렬하려는 경우 다음과 같이 단일 쿼리를 작성할 수 있습니다. - mysql> Select Name, RollNo from student order by name,rollno; +------
MySQL의 ALTER TABLE 명령을 사용하여 수행할 수 있습니다. Grade 열의 크기가 Varchar(10)로 선언된 테이블 Student를 고려하면 다음 쿼리에서 볼 수 있습니다. - mysql> DESCRIBE Student; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+---
MySQL의 ALTER TABLE 명령을 사용하여 수행할 수 있습니다. RollNo 열의 데이터 유형이 Integer로 선언된 Student 테이블을 고려하면 다음 쿼리에서 볼 수 있습니다. - mysql> DESCRIBE Student; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+--
특정 열 이름을 가진 모든 테이블을 가져오는 MySQL 쿼리를 작성하려면 LIKE 연산자를 사용할 수 있습니다. 다음과 같은 예의 도움으로 이해할 수 있습니다 - 예시 다음은 열 이름이 ID인 모든 테이블을 가져오는 MySQL 쿼리입니다. − mysql> Select Column_name as 'ColumnName',Table_name As 'Tablename' FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE '%ID%' ORDER B
우리가 알고 있듯이 쿼리는 세미콜론이 뒤따르는 MySQL 문으로 구성됩니다. 한 줄에 여러 개의 MySQL 문을 세미콜론으로 구분하여 입력할 수 있습니다. 다음 예를 고려하십시오 - mysql> Select * from Student; Select * from Student ORDER BY Name; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Gaurav | 100 | B
이러한 종류의 이름을 가진 테이블을 생성하려면 인용 문자를 사용해야 합니다. 따옴표는 ANSI_QUOTES SQL 모드에 따라 단일 또는 이중일 수 있습니다. 이 모드가비활성화된 경우 식별자 인용 문자는 백틱(`)입니다. select -라는 테이블을 생성한 다음 예를 고려하십시오. mysql> Create table `a^b`(`a^b` int); Query OK, 0 rows affected (0.19 sec) mysql> Create table "a^g"("a^g" int); E
데이터 로드 이 명령문은 데이터 파일에서 데이터베이스로 데이터를 가져오는 데 사용됩니다. 파일에서 직접 데이터 레코드를 읽고 테이블에 삽입합니다. 구문은 다음과 같습니다 - 구문 LOAD DATA LOCAL INFILE '[path/][file_name]' INTO TABLE [table_name ]; 여기서 경로는 파일의 주소입니다. file_name은 .txt 파일의 이름입니다. table_name은 데이터가 로드될 테이블입니다. 개념을 설명하기 위해 경로가 d:/A.txt −인 A.txt에 탭으로 구분된
ROW 선택과 COLUMN 선택을 결합하기 위해 WHERE 절을 사용할 수 있습니다. 예를 들어, 아래 표가 있습니다 - mysql> Select * from Student; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Gaurav | 100 | B.tech | | Aarav | 150 | M.SC | | Aryan
의미 있는 방식으로 행을 정렬하기 위해 ORDER BY 절을 사용할 수 있습니다. 다음 테이블의 행을 정렬한다고 가정합니다. - mysql> Select * from Student; +--------+--------+--------+ | Name | RollNo | Grade | +--------+--------+--------+ | Gaurav | 100 | B.tech | | Aarav | 150 | M.SC | | Aryan &n
테이블의 값을 다른 테이블에 복사하는 예를 보면 이해할 수 있습니다. 우리는 테이블 cars의 데이터를 사용하고 그 데이터를 테이블 copy_cars에 복사합니다 - mysql> CREATE TABLE copy_cars LIKE cars; Query OK, 0 rows affected (0.86 sec) mysql> SELECT * from copy_cars; Empty set (0.08 sec) 하위 쿼리를 사용하는 다음 쿼리는 cars와 동일한 값을 copy_cars 테이블에 삽입합니다 - mysql> INS