SQL数据库高级查询命令(5)

简介:

select orderid,goodsname,quantity,ordersum,orderdate,firstname,lastname

from orders

inner join customers

on customers.customerid=orders.customerid

-----------查询orders表中按照customerID将货品订单与订货人对应显示。

select student_id,student_name,class_name

from student

right outer join class_info

on student.class_id=class_info.class_id

-----------class_info表为主显示所有学生所对应的班级,显示结果以主表的所有内容为准。

select student_id,student_name,class_name

from student

left outer join class_info

on student.class_id=class_info.class_id

-------student表为主显示所有学生所对应的班级,显示结果以主表的所有内容为准。

select student.student_id,student_name,coursename,grade

from student_course

right outer join student

on student.student_id=student_course.student_id

left outer join course

on student_course.course_id=course.courseid

-----------查询所有学生所对应的科目的考试成绩,其中student_course表中不符和条件的不显示以及course表中不符合条件的也不显示。其中right outer join 所对应的表中的记录会全部显示。成为主表。Left outer join 表中只显示符合条件的记录。

select student.student_id,student_name,class_name

from student

full outer join class_info

on student.class_id=class_info.class_id

----------显示所有学生所对应的班级,full outer join 会显示两张表中的所有记录。

select student_id,student_name,class_name

from student

inner join class_info

on student.class_id=class_info.class_id

--------显示学生所对应的班级以及学生姓名和学生ID. inner join 只显示两张表中互相符合条件的记录

select * from student where age>(select avg(age) from student)

---------查询平均年龄大于select avg(age) from student的学生信息。

select student_id from student_course where grade<(select avg(grade) from student_course)

-------按照学生编号查询平均分数小于select avg(grade) from student_course分数的学生编号。

select * from customers where customerid=(select customerid from orders where orderid=3)

----------查看orderid等于三的订货编号人的详细信息。

select * from student where student_id not in (select student_id from student_course)

--------------按照student_id查询没有参加考试的学生的详细信息。

if exists(select * from sys.sysobjects where xtype='U' and name='student')

drop table student

go

create table student(stu_id int identity primary key,stu_name varchar(10) not null,age int)

---------判断如果所有数据库中有student表,则删除此student表,然后重新创建student表。

 

 

 本文转自 沐小七  51CTO博客,原文链接:http://blog.51cto.com/3088522/566622


相关文章
|
9月前
|
SQL 监控 关系型数据库
一键开启百倍加速!RDS DuckDB 黑科技让SQL查询速度最高提升200倍
RDS MySQL DuckDB分析实例结合事务处理与实时分析能力,显著提升SQL查询性能,最高可达200倍,兼容MySQL语法,无需额外学习成本。
|
9月前
|
SQL 存储 关系型数据库
MySQL体系结构详解:一条SQL查询的旅程
本文深入解析MySQL内部架构,从SQL查询的执行流程到性能优化技巧,涵盖连接建立、查询处理、执行阶段及存储引擎工作机制,帮助开发者理解MySQL运行原理并提升数据库性能。
|
9月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
730 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
8月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
419 6
|
9月前
|
SQL 监控 关系型数据库
SQL优化技巧:让MySQL查询快人一步
本文深入解析了MySQL查询优化的核心技巧,涵盖索引设计、查询重写、分页优化、批量操作、数据类型优化及性能监控等方面,帮助开发者显著提升数据库性能,解决慢查询问题,适用于高并发与大数据场景。
|
10月前
|
SQL XML Java
通过MyBatis的XML配置实现灵活的动态SQL查询
总结而言,通过MyBatis的XML配置实现灵活的动态SQL查询,可以让开发者以声明式的方式构建SQL语句,既保证了SQL操作的灵活性,又简化了代码的复杂度。这种方式可以显著提高数据库操作的效率和代码的可维护性。
563 18
|
10月前
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
1335 8
|
8月前
|
SQL 关系型数据库 MySQL
(SQL)SQL语言中的查询语句整理
查询语句在sql中占了挺大一部分篇幅,因为在数据库中使用查询语句的次数远多于更新与删除命令。而查询语句比起其他语句要更加的复杂,可因为sql是数据库不可或缺的一部分,所以即使不懂,也必须得弄懂,以上。
430 0
|
10月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
437 5
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")