MySQL Select
查询分类
单表查询:简单查询
多表查询:连接查询
联合查询:多个查询结果汇总
查询的组成
投影查询:挑选要显示的字段
select array1,array2,... from tb_name;
选择查询:挑选符合条件的行
select * from tb_name where-clause
where-clause:布尔条件表达式= # 等值比较 # 等值比较,包括与NULL的安全比较或!= # 不等值比较,>= # 其它比较符IS NULL # 是否为空值IS NOT NULL # 是否不为空值LIKE # 支持的通配符有%和_RLIKE或REGEXP # 正则表达式匹配IN # 判指定字段的值是否在给定的列表中BETWEEN … AND …# 在某取值范围内
组合条件查询
NOT,!# 非AND,&& # 和OR,|| # 或
聚合函数查询
SUM() # 求总和AVG() # 求平均值MAX() # 求最大值MIN() # 求最小值COUNT() # 求记录总数#注:count(*)效率最低,可指定某一字段求总数,如count(Name)
查询语句
语法
select ... from tb_name where-clause [others-clause]
各子句类型及作用
where # 条件过滤group by # 对查询结果分组having # 对group by的结果进行条件过滤order by # 排序limit # 限制输出行数,如”limit 2“表示只显示前2行,“limit 2,3”表示偏移前2行,显示3-5行
其它修饰符
123 |
|
select的执行流程
from-->where-->group by-->having-->order by-->select-->limit |
多表查询
说明
事先将两张或多张表连接(join),根据连接的结果进行查询
语法
select … from tb1 Join_Type tb2 [on (Join_Condition)]连接类型有:cross join,inner join,left join和right join等
连接分类
cross join:交叉连接,又称笛卡尔乘积
表1中的记录(共M条)与表2中的记录(共N条)逐一连接,交叉连接数据量较大,共M*N条记录;
select * from students,classes# 注:不带where子句哦
inner join:内连接,根据连接判断的运算符又可分类如下:
等值连接:根据表1和表2中某字段值相等进行连接,其查询结果中列出被连接表中的所有列,包括其中的重复列
select * from students,classes# 注:不带where子句哦
条件比较连接:在连接条件中使用除等号(=)运算符之外的运算符,如>,>=,等
自然连接:在连接条件中使用等号(=)运算符,且只选择结果集中的部分列,并删除连接表中的重复列
select a.name,p.pub_name from authors as a inner join publishers as p on a.city=p.city
外连接:返回查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接)、右表(右外连接)或两个边接表(全外连接)中的所有数据行
左外连接:返回包括左表中的所有记录和右表中联结字段相等的记录
tb1 LEFT JOIN tb2 ON 连接条件
右外连接:返回包括右表中的所有记录和左表中联结字段相等的记录
tb1 RIGHT JOIN tb2 ON 连接条件
全外连接:连接运算两边的关系中的元组都保留,MySQL不支持此种连接
自连接:同一表中某字段的多次比较使用
select stu1.Name as StuName,stu2.Name as TeachName from students as stu1,students as stu2 where stu1.TeacherID=stu2.StuID;
子查询
说明:
在外层查询中嵌套的内层查询叫做子查询,类型有:
where型子查询:把内层查询结果当做外层查询的比较条件
select goods_id,goods_name from goods where goods_id = (select max(goods_id) from goods)# 子查询的返回值只能有1个
exists型子查询:把内层查询结果拿到外层,看外层的查询是否成立
select cat_id,cat_name from category where exists(select * from goods where goods.cat_id = category.cat_id);# 可通过转换为内连接查询:select cat_id,cat_name from category inner join goods on goods.cat_id=category.cat_id;# 与exists类似的还有in子查询,表示外层查询条件在一个内层查询的结果集内select * from user_core where userId in (select userId from user_classes where class_id=’A001’);
from型子查询:把内层的查询结果供外层查询使用
select name,avg(score) from stu where name in (select name from (select name,count(*) as gk from stu having gk >=2)) group by name;
注:MySQL不擅长于子查询的优化,故应避免使用子查询
联合查询
说明
把两个或多个查询语句的结果合并成一个结果进行输出,前提是多个查询结果的输出字段是一致的
语法
SELECT clause UNION SELECT clause UNION …
union:会将多个表的查询结果合并后进行排序,同时删除重复的行,故效率略慢;union和union all的区别
union all:只是简单的将多个表的结果合并后返回,不删除重复行,效率较高
实例
涉及的表结构:
查询需求有:

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Win11 시스템에는 근거리 공유, 캐스팅, 프로젝션, 공유 기능이 제공됩니다. 이러한 기능을 사용하는 방법은 무엇입니까? 어떤 차이점이 있나요? 자세한 내용은 아래 소개를 참조하세요. 1. 근거리 공유에 대한 공식 문서: 근거리 공유 - Microsoft 커뮤니티는 Windows(microsoft.com)에서 주변 장치와 콘텐츠를 공유합니다. 기능: 두 대의 컴퓨터가 Bluetooth를 통해 파일을 전송합니다. (WiFi 또는 USB 디스크 없이 사용 가능) 전제 조건: 두 대의 컴퓨터 단계: 1) 마우스 오른쪽 버튼 클릭 → 설정으로 이동 2) 시스템 → 모든 사람에게 연결(다른 장치가 이 장치를 검색할 수 있도록 허용) 3) 두 컴퓨터 모두 다음과 같이 설정 4 ) 보내려는 파일을 마우스 오른쪽 버튼으로 클릭하고 공유를 클릭하세요. 5) 검색된 다른 컴퓨터를 클릭하여 파일을 전송합니다.

프로젝션 기능을 사용하면 휴대폰 화면을 컴퓨터 화면에 프로젝션할 수 있습니다. 네트워크나 Bluetooth를 통해 휴대폰과 컴퓨터를 연결한 다음 컴퓨터에서 화면 프로젝션 기능을 사용하기만 하면 됩니다. win10을 이 컴퓨터에 투영하는 방법: 1. 시작 메뉴에서 설정으로 이동하고 Enter를 선택합니다. 2. 그런 다음 좌표에서 옵션을 찾아 클릭하여 입력할 수 있습니다. 3. 그런 다음 설정합니다. 4. 설정이 완료되면 + 단축키를 누른 후 선택하세요. 5. 그런 다음 휴대폰 설정을 열면 일부 휴대폰에 더 많은 연결 방법이 있음을 알 수 있습니다. 6. 우리는 옵션을 발견하고 우리 자신의 컴퓨터 장비를 선택하기 위해 들어갔습니다. 7. 이때 컴퓨터에 프롬프트 상자가 나타나면 클릭하기만 하면 됩니다.

1. 프로젝터와 iPhone을 동일한 네트워크에 연결하고 화면 오른쪽 상단에서 아래로 스와이프한 후 제어 센터를 열고 [Screen Mirroring]을 클릭합니다. 2. 스크린 미러링 검색 결과에서 미러링할 프로젝터 장치를 찾습니다.

win10 프로젝터는 데스크탑 배경만 표시하고 데스크탑 아이콘은 표시하지 않습니다. 많은 친구들이 이 문제를 겪었을 것으로 생각됩니다. 실제로 이 문제는 편집기를 통해 해결될 수 있습니다. 바탕 화면 아이콘이 표시되지 않는 win10 프로젝션에 대한 해결 방법: 듀얼 화면 확장 모드를 켰습니다. 이는 문제가 아니며 단지 디스플레이 모드일 뿐입니다. 즉, 현재 컴퓨터에는 두 개의 디스플레이가 있으며 그 중 하나는 홈 화면입니다. 다른 하나는 프로젝터에서 투사되는 화면이며 현재 시스템은 기본적으로 듀얼 화면 확장 모드를 선택했습니다. 1. 키보드의 "win+P" 키를 동시에 누를 수 있습니다. 2. 홈 화면 바탕화면 한쪽(시스템 버전에 따라 팝업 방식이 다름)에 다음 4가지 옵션이 팝업됩니다. 컴퓨터 화면만

win10의 프로젝션 기능을 사용할 때 많은 사용자들이 이 기능을 사용할 때 프로젝션 기능이 응답하지 않거나 정상적으로 사용할 수 없다고 말했습니다. 이때 시스템 기능을 먼저 확인한 후 작동 상태를 확인해야 합니다. 프로젝터로 해결 가능합니다. Windows 10 프로젝션이 응답하지 않는 경우 수행할 작업: 1. 휴대폰에서 컴퓨터로 프로젝션하는 경우 휴대폰과 컴퓨터가 동일한 WiFi 네트워크에 있는지 확인하십시오. 2. 컴퓨터의 설정에서 오른쪽으로 설정하고 전원을 꺼주세요. 3. 그래도 문제가 해결되지 않으면 네트워크 카드 드라이버를 다시 설치하거나 제거 후 다시 설치하거나 직접 업데이트하시기 바랍니다. 4. 프로젝터에 연결하는 경우 VGA 케이블에 문제가 있는지, 제대로 연결되어 있는지 확인하세요. 5. 컴퓨터에 듀얼 시스템이 있는 경우 그래픽 카드 드라이버 충돌도 발생합니다.

win10 프로젝터를 사용할 때마다 설정이나 제어판에서 열어야 하는데 조작이 매우 번거롭습니다. 그러면 프로젝터에 바로가기 키가 있습니까? 물론 바로가기 키를 살펴보십시오. 소개하겠습니다~ Win10에서 프로젝션을 위한 단축키는 무엇입니까? 1. 사용자는 키보드에서 +를 눌러 프로젝션 설정을 빠르게 열 수 있습니다. 2. 그런 다음 필요한 방법을 선택하고 투영할 수 있습니다. 관련 기사: 이 컴퓨터에 win10을 투사하는 방법>>>win10 프로젝터로 전체 화면을 채우는 방법>>>

Win10 사용자는 일반적으로 Windows 10 시스템의 프로젝션 기능을 사용하는 것을 좋아합니다. 연결 기능 메뉴에 "이 컴퓨터에 프로젝트" 옵션이 표시되지 않는 경우. 걱정하지 마세요. 이 문제를 쉽게 해결하는 방법에 대한 자세한 가이드가 있습니다! 아래 단계를 따르십시오. Windows 10 Home Edition 1에서 이 컴퓨터에 투사하는 옵션을 더 이상 사용할 수 없는 경우 수행할 작업. 먼저 왼쪽 하단에 있는 전용 아이콘을 클릭하면 여러 옵션 메뉴 팝업이 표시됩니다. . 2. 옵션 버튼을 다시 클릭하여 페이지를 확인하고 들어갑니다. 3. 홈페이지에서 버튼을 찾아 클릭한 후 탭을 클릭하세요. 4. 이제 이 옵션에는 두 가지 유형의 투영 설정이 있음을 알 수 있습니다. 5. 어떤 경우에도 화면 프로젝션 기능이 성공적으로 구현될 수 있는지 확인하려면 확인하세요.

프로젝션 기능을 사용하면 시스템 소프트웨어가 화면을 공유할 수 있을 뿐만 아니라 작동이 매우 편리하기 때문에 프로젝션 기능을 사용하는 사용자가 점점 늘어나고 있습니다. 그러나 일부 사용자는 이 기능을 사용할 때 이 기능이 회색으로 표시되어 선택할 수 없다는 것을 알게 됩니다. 따라서 win10을 통해 이 컴퓨터에 투사할 때 회색으로 표시되는 문제를 해결하려면 어떻게 해야 합니까? win10을 통해 이 컴퓨터에 프로젝션할 때 문제를 해결하는 방법입니다. 이 컴퓨터에 투사할 때 Windows 10이 회색으로 표시되면 어떻게 해야 합니까? 1. Win+i 키보드 단축키를 눌러 Windows 설정을 열 수 있으며, 시스템 소프트웨어( 디스플레이, 소리, 알림, 전원). 시스템 소프트웨어 홈 페이지 설정 대화 상자
