一、连接查询:通过连接运算符可以实现多个表查询。

连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志。

常用的两个链接运算符

1.join   on(左右连接)

2.union(上下连接)  注:只有在列的数据类型一致时才能够连接起来

二、变量

SQL语言也跟其他编程语言一样,拥有变量、分支、循环等控制语句。

在SQL语言里面把变量分为局部变量全局变量,全局变量又称系统变量(@@)。

局部变量:

使用declare关键字给变量声明,语法非常简单:declare @<变量名> <变量类型>

对变量的赋值可以使用set关键字,使用set关键字时对变量的赋值一次只能赋值一个。

我们也可以在查询语句里面对这个变量进行赋值。

全局变量:又叫做系统变量。

运算符:

运算符优先级

if。。。else。。

while语句

 while if 嵌套

--语文成绩最高的学生信息
select * from stu where scode=(select code from score where yu=(select max(yu) from score))
select *from stu where scode=(select top 1 code from score order by yu desc)
--数学成绩最低的学生的任课老师的所有信息
select * from tch where tcode=(select shujiao from stu where scode=(select code from score where shu=(select min(shu) from score)))
--查询汇总成一个表:各门课分数、学生姓名、班级、任课老师的姓名
select stu.sname,banji,score.yu,shu,ying,
(select tname from tch where tcode=stu.yujiao) 语文老师,
(select tname from tch where tcode=stu.shujiao)数学老师,
(select tname from tch where tcode=stu.yingjiao)英语老师
from stu join score on stu.scode=score.code
print @@version
select yu,
case yu
when 99 then '优秀'
when 88 then '良好'
else '合格'
end
from score
go
--查询每个班里数学最高分
select banji,max(shu) from stu join score on  stu.scode=score.code group by banji
--查询语文平均分最高的班级的老师的信息
select * from tch where tcode=
(select top 1 yujiao from stu where banji=
(select top 1 banji from stu join score on stu.scode=score.code group by banji order by avg(yu) desc))

转载于:https://www.cnblogs.com/baimangguo/p/6085433.html

SQL 数据库 连接查询 变量、if else、while相关推荐

  1. 数据库——sql语句 连接查询

    数据库--连接查询 1.定义:同时涉及多个表的查询. 2.连接条件常用格式: [<表名1>]<列名><比较运算符>[<表名2>]<列名2> ...

  2. 浅谈sql之连接查询

    SQL之连接查询 一.连接查询的分类 sql中将连接查询分成四类: 内链接 外连接 左外连接 右外连接 自然连接 交叉连接 二.连接查询的分类 数据库表如下: 1.学生表 2.老师表 3.班级表 表用 ...

  3. sql语句连接查询.

    sql语句连接查询. 接触sql语句这么长时间了,牵涉到连接的时候,总是google别人的. 今天好好学学sql 的连接查询 准备工作 : mysql5.6 建表语句 查询语句 select p.id ...

  4. SQL数据库高级查询命令(2)

    接上篇博文<SQL数据库高级查询命令(1)> use market go select distinct goodsname from orders -----查看orders表中有订单的 ...

  5. SQL多表查询:SQL JOIN连接查询各种用法总结

    在实际应用中,大多的查询都是需要多表连接查询的,但很多初学SQL的小伙伴总对各种JOIN有些迷糊.回想一下,初期很长一段时间,我常用的似乎也就是等值连接 WHERE 后面加等号,对各种JOIN也是不求 ...

  6. 小白 MySQL数据库链接查询语句_MySQL数据库——连接查询

    今天将用 "手" 来教大家关于MySQL连接查询的知识! ============================================================= ...

  7. MYSQL数据库头歌实验平台答案(中央财经大学)第6章 结构化查询语言SQL(5)-连接查询

    第1关 内连接查询 SE School;########## 查询数据表中学生姓名和对应的班级 ########## #请在此处添加实现代码 ########## Begin ########## s ...

  8. MySQL 数据库————连接查询

    目录 一.多表连接查询 1.内连接--inner join 2.左连接--left join 3.右连接--right join 二.存储过程 1.简介 2.优点 3.语法 ②.参数分类 ③.带参数的 ...

  9. Sql Server 连接查询

    在操作数据库的时候,经常会使用到inner join,left join,right join,full join.今天用了一个简单的例子记录一下这几个的区别. 1 测试数据 为了方便测试,就不用搞那 ...

最新文章

  1. 基于Socket的java网络编程
  2. 蜗轮蜗杆计算软件_齿轮传动计算软件
  3. MySQL进阶篇(02):索引体系划分,B-Tree结构说明
  4. 按值设置选择选项“已选择”
  5. 类ResourceBundle详解
  6. 分享一个不错的个人简历模板下载网站(word文件可编辑的)
  7. defined()函数
  8. 云服务器入门篇:搭建云服务器Java web环境(Ubuntu Server 16.04.1 LTS 64位)
  9. 安装配置磁盘阵列SAN存储系统
  10. AidLux“换脸”案例源码详解 (Python)
  11. 我是如何用最简单的前端技术揭示那些灰色产业背后的原理
  12. python:.py文件转.dll文件(.pyd文件)
  13. 贪心算法(Greedy)
  14. 【程序人生】【目标计划】目标计划(更新至2020年)
  15. 【Fluent】iso-clip、iso-surface和plane-surface的区别,iso-surface如何添加和应用?Error:Surface creation failed错误
  16. DEV Gridcontrol 多选功能实现
  17. [图文教程] 禁止 Windows 10 自动下载和更新驱动程序(转)
  18. windows提权—烂土豆(RottenPotato)及Juicy Potato提权
  19. sql server(MSSQLSERVER)服务不能启动 解决办法
  20. oracle启动crs要多久,ORACLE CRS日常维护命令

热门文章

  1. Hyperledger Fabric 词汇表
  2. 支持回调处理 php函数,PHP支持回调的函数有哪些
  3. java如何读取rfid的数据_100G 数据如何先随机读取1%?
  4. 计算机网络实验仿真系统设计,计算机网络实验课程仿真系统平台的研究与设计...
  5. react 引用本地js_从零配置webpack 4+react脚手架(二)
  6. python输出日期语句_python输出语句怎么用
  7. win8计算机usb无法识别usb设备,Win8.1无法识别USB设备原因分析及解决办法(适合Win8)...
  8. 20211104 为什么矩阵的迹等于特征值之和,为什么矩阵的行列式等于特征值之积
  9. 《安全测试指南》——配置管理测试【学习笔记】
  10. Window下JDK安装教程