Java 组合查询

本文介绍了SQL中的组合查询概念,包括子查询的使用方法及其不同形式,如标量子查询、列子查询、行子查询和表子查询,并详细解释了如何在SQL的不同部分嵌套子查询。此外,还探讨了使用Union运算符进行组合查询的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第七章  组合查询

 

1、什么是字符集?

规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表那个文字(解码)的转换关系。常见的字符集有ASCI字符集、   GB2312字符集(简体中文)、BIG5字符集(繁体中文)、UnicodeI字符集等。。。      

2、什么事字符编码?

3、字库表(character  repertoier:

是一个相当于所有可读或者可显示字符的数据库,字库表决定了整个字符集能够展现表示的所有字符的范围。

4、字符码(character  encoding from):

         将编码字符集和实际存储数值之间的转换关系。一般来说都会直接将编码得值作为编码后直接存储。

5、编码字符集(coded  character set):

         用一个编码值来表示一个字符在字库表中的位置。

6UTF-8:

         变长编码,最小单位为一个字节。

13个字节的UTF-8十六进制编码一定是以E开头的。

22个字节的UTF-8十六进制编码一定是以C/D开头的。

31个字节的UTF-8十六进制编码一定是以比8小得数字开头的。

一、子查询

1、什么是子查询?( Column)

         子查询是嵌套在查询与局里面的查询语句,就像语句块里嵌套语句块类似。

         子查询分为两种:一种是相关查询,一种是无相关查询。

         子查询简单形式:

         Select columnA,(子查询)as ColumnB from 表明

2、如何使用子查询?

         在完整的SQL结构中能嵌套资产讯的位置分别是selectfromwheregroup byhavingorder by.

3、在select中嵌套

         语句:

                  

         嵌套在select语句中的SQL语句要求查询的值只能是单行单列。

4、在from中嵌套

         结构:

         from里的子查询可以使任意查询语句,然后将其结果作为外部查询的表。

        

         from中嵌套的SQL不受任何限制,也就是说子查询结果可以为多行多列

         举例:

         select* from(select `姓名`,`学号`,`科目` FROM t_student) s;

5、在Where中嵌套

         结构:

         where 中嵌套的子查询根据不同的运算符有不同的分类。

6、在Group by 中嵌套

        

7、在Having中嵌套

      

8、在Order by 中嵌套

        

1)标量子查询:

         是指查询返回的是单一值的标量,如一个数字或一个字符串,也就是子查询中最简单的返回形式。可以使用运算符对子查询的标量结果进行比较,通常子查询的位置在比较式的右侧。

举例

-- 查询比张三的计算机基础成绩高的其他学生成绩信息

select *from t_student

where 分数>(select 分数 from t_student

where 姓名 = '张三' and 科目= '计算机基础')

and 姓名!= '张三'and 科目 = '计算机基础';

2)列子查询

         是指查询返回的结果集是N行以列,该结果通常用来自对标的某个属性查询返回。可以使用INany( some)existsall操作符,不能直接使用运算符。

in运算符:

all运算符

                   和子查询的结果逐一比较,必须全部满足时表达式的值才为真。

any运算符:

         和子查询的结果逐一比较,其中一条记录满足条件则表达式的值就为真。

举例:

--查询比张三的所有成绩都要高的学生成绩

         SELECT * FROM t_student

WHERE 分数 > ALL(SELECT 分数 from t_student

where 姓名 = '张三');

wxists/ not exists运算符

         wxists判断子查询是否存在数据,如果存在表达式为真,反之为假,not wxists

相反。

3)行子查询

         指子查询返回的结果集是一行N列,盖子查询的结果通常是对表的某行数据进行查询而返回的结果数。

4)表子查询

         指子查询返回的结果集是NN列的一个表数据。

 

二、组合查询

       1、使用Union运算符

                   是一种联合两条火以上查询的运算符,类似多条查询结果想组合的效果。

                   标准结构:

                  

                   Union结果集列名与Union运算符中第一个select语句的结果集中的列名相同。另一个select语句的结果集列名将被忽略。

                   注意:他是把后一个的表的数据添加到第一个表中。

三、总结

        

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值