mysql에서 중첩 쿼리는 SELECT 문의 WHERE 절 또는 HAVING 절에 다른 SELECT 문을 중첩하는 쿼리를 의미하며 구문은 "SELECT 문 WHERE 조건(SELECT 문)"이라고도 합니다.
이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.
mysql 중첩 쿼리 문이란 무엇입니까
중첩 쿼리
정의: 내부 쿼리 문(select-from-where) 블록은 다른 외부 쿼리 블록의 where 절에 중첩될 수 있습니다. 여기서 외부 레이어 쿼리는 호출이라고도 합니다. 상위 쿼리, 기본 쿼리. 쿼리에서는 내부 쿼리를 하위 쿼리라고도 합니다. 하위 쿼리는 일반적으로 order by 절을 사용하지 않으며 최종 쿼리 결과만 정렬할 수 있습니다.
또 다른 정의: SELECT 문의 WHERE 절 또는 HAVING 절에 다른 SELECT 문을 중첩하는 쿼리를 중첩 쿼리라고 하며 하위 쿼리라고도 합니다.
중첩 쿼리가 작동하는 방식은 내부 쿼리가 먼저 처리되고 외부 쿼리가 내부 쿼리의 결과를 사용하는 것입니다. 중첩 쿼리는 상위 쿼리 select 문에서만 사용할 수 없습니다. 삽입, 업데이트, 삭제 문 또는 기타 하위 쿼리에도 사용할 수 있습니다.
1. 하위 쿼리 구성
1. 표준 선택 목록 구성 요소를 포함하는 표준 선택 쿼리입니다.
2. 하나 이상의 테이블 또는 뷰 이름이 포함된 절의 표준입니다.
3. 선택적 where 절.
4. 절별 선택 그룹.
5. 선택 사항입니다.
2. 하위 쿼리의 구문 규칙
1. 하위 쿼리의 선택 쿼리는 항상 괄호 안에 표시됩니다.
2. Compute 또는 for.browse 절을 포함할 수 없습니다.
3. 상위 절을 동시에 지정하는 경우 order by 절만 포함될 수 있습니다.
4. 하위 쿼리는 최대 32개 수준까지 중첩될 수 있습니다. 일부 쿼리는 32개 수준의 중첩을 지원하지 않을 수 있습니다.
5. 하위 쿼리는 단일 값을 반환하는 한 표현식을 사용할 수 있는 모든 곳에서 사용할 수 있습니다.
6. 테이블이 하위 쿼리에만 나타나고 외부 쿼리에는 나타나지 않는 경우 테이블의 열은 출력에 포함될 수 없습니다.
3. 값을 반환하는 하위 쿼리
하위 쿼리가 하나의 값만 반환하는 경우 =,, >=,
3.1 단순 하위 쿼리
select name,age from person where age > ( select age from person where name = '张三');
3.2 중첩 쿼리와 같은
select count(distinct(Tname)) --查询姓“张”的老师的个数 from Teacher where Tname like '张%';
4. 일련의 값을 반환하는 하위 쿼리
서브 쿼리가 두 개 이상의 값을 반환하지만 집합을 반환하는 경우 직접 사용할 수 없습니다. 연산자의 경우 비교 연산자와 하위 쿼리 사이에 ANY, SOME 또는 ALL을 삽입할 수 있습니다. 등가 관계에서는 IN 연산자를 사용할 수 있습니다.
4.1 in 중첩 쿼리
in 키워드는 쿼리 표현식이 여러 값 목록에 있는지 확인하기 위해 where 절에 사용됩니다. in 목록의 조건을 만족하는 레코드를 반환합니다.
select name from person where countryid in ( select countryid from country where countryname = '中国');
4.2 일부 중첩 쿼리
some은 SQL의 논리 연산 기호입니다. 일련의 비교에서 일부 값이 True이면 결과도 True입니다. some 구문은 다음과 같습니다.
select name from person where countryid = some ( select countryid from country --用等号和以下查询到的值比较,如果与其中一个相等,就返回 where countryname = '中国');
4.3 allnested query
all은 SQL의 논리 연산자입니다. 일련의 비교가 참이면 결과도 참일 수 있습니다.
select name from person where countryid > all ( select countryid from country --当countryid大于以下返回的所有id,此结果才为True,此结果才返回 where countryname = '中国');
4.4 존재 중첩 쿼리
exists는 SQL의 논리 연산 기호입니다. 하위 쿼리가 결과 집합을 반환하면 참입니다. 존재한다는 것은 '존재한다'는 의미를 나타내며, 조건에 맞는 레코드만을 찾는다. 일치하는 첫 번째 레코드가 발견되면 검색이 중지됩니다.
exists Subquery
서브 쿼리는 첫 번째 Select 문이므로 계산 절과 into 키워드는 허용되지 않습니다.
exists는 하위 쿼리가 결과 집합을 반환하는지 여부를 의미합니다.
SELECT * FROM Person WHERE exists ( SELECT 1); --SELECT 0 SELECT NULL 返回结果都一样,因为这三个子查询都有结果集返回,因此总是True,SELECT * FROM Person照常执行
그러나 하위 쿼리에 추가된 조건으로 인해 결과 집합이 반환되지 않으면 기본 문이 실행되지 않습니다.
SELECT * FROM Person WHERE exists ( SELECT * FROM Person WHERE Person_Id = 100); --如果不存在Person_Id的记录,则子查询没有结果集返回,主语句不执行
5. 새 데이터 테이블을 반환하는 하위 쿼리
5.1 "001" 코스 비율 "002" 쿼리 높은 점수를 받은 모든 학생의 학생 수
Select a.Sno from (select Sno,score from SC where Sno='001') a, (select Sno,scorefrom SC where Cno='002') b Where a.score>b.score and a.Sno=b.Sno;
추천 학습: mysql 비디오 튜토리얼
위 내용은 mysql 중첩 쿼리 문이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
