SQL总结(七)查询实战】的更多相关文章

SQL总结(七)查询实战 一.场景 给定一个场景,学生选课系统为例,大家很熟悉. 主要关系: 学生(学号.姓名.年龄.性别) 教师(教师ID,教师姓名) 课程(课程ID,课程名称,任教教师ID) 成绩(学生ID,课程ID,成绩) 二.创建表并预置数据 创建关系表: --学生:Student(SID,SName,SAge,SSex) --学生表(学号.姓名.年龄.性别) --性别,0表示男,1表示女 -- --IF EXISTS(SELECT OBJECT_ID('Student')) /*此处永…
SQL Server datetime数据类型设计.优化误区 一.场景 在SQL Server 2005中,有一个表TestDatetime,其中Dates这个字段的数据类型是datetime,如果你看到表的记录如下图所示,你最先想到的是什么呢? (图1:数据列表) 你看到这些数据,是不是觉得这样的设计既浪费了存储空间,又使得这个列的索引增大,查询起来更慢,你也想使用一些其它的数据类型来代替这个datetime吧? 其实大家都是这么想的,这个方向是100%正确的,但是在写这篇文章以前,我进入了两…
C#构造方法(函数)   一.概括 1.通常创建一个对象的方法如图: 通过  Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法. 简述:用来初始化对象的,为类的成员赋值. 2.构造方法特点 a.方法名与类名相同: b.没有返回值类型: c.必须要通过new的形式调用: 3.语法 访问修饰符 类名([参数]) { 方法体 } 二. 无参构造方法 1.在默认情况下,系统将会给类分配一个无参构造方法,并且没有方法体. 通过反编译工具看出: 我们…
SQL Fundamentals || Oracle SQL语言 子查询(基础) 1.认识子查询 2.WHERE子句中使用子查询 3.在HAVING子句中使用子查询 4.在FROM子句中使用子查询 5.在SELECT子句中使用子查询 6.WITH子句 子查询(进阶) 7.分析函数 8.行列转换 9.设置数据层次 七.分析函数 分析函数语法: 分窗操作的: 使用分析函数可以进行更为复杂的查询报表显示. 在分析函数中可以使用若干统计函数. 传统SQL的问题 虽然利用SQL之中提供的各种查询命令可以完…
CASE函数   作用: 可以将查询结果集的某一列的字段值进行替换 它可以生成一个新列 相当于switch...case和 if..else 使用语法: case 表达式/字段 when 值 then 自定义值 else end as 别名 when 值 then:可以理解为当某个字段为某个值的时候,然后就返回自定义值将结果集的字段值进行替换 else:如果上面的when都不满足就执行else结果 常用用法一(case后面有字段或者表达式): when关键字后面写固定值 case关键字后面如果有…
Spark SQL概述 1.什么是Spark SQL Spark SQL是Spark用于结构化数据(structured data)处理的Spark模块. 与基本的Spark RDD API不同,Spark SQL的抽象数据类型为Spark提供了关于数据结构和正在执行的计算的更多信息. 在内部,Spark SQL使用这些额外的信息去做一些额外的优化,有多种方式与Spark SQL进行交互,比如: SQL和DatasetAPI. 当计算结果的时候,使用的是相同的执行引擎,不依赖你正在使用哪种API…
Sql Server中查询今天.昨天.本周.上周.本月.上月数据 在做Sql Server开发的时候有时需要获取表中今天.昨天.本周.上周.本月.上月等数据,这时候就需要使用DATEDIFF()函数及GetDate()函数了.DATEDIFF ( datepart , startdate , enddate )释义:计算时间差datepare值:year | quarter | month | week | day | hour | minute | second | millisecondst…
---------------------------------------------------------------------------------- --1. 创建链接服务器 --1.1 创建一个链接名 EXEC sp_addlinkedserver 'LinkName','','SQLOLEDB','远程服务器名或ip地址' --有自定义实例名还要加上"\实例名" /*例如:EXEC sp_addlinkedserver 'TonyLink','','SQLOLEDB…
最近学习了一下SQL的分页查询,总结了以下几种方法. 首先建立了一个表,随意插入的一些测试数据,表结构和数据如下图: 现在假设我们要做的是每页5条数据,而现在我们要取第三页的数据.(数据太少,就每页5条了) 方法一: * from [StuDB].[dbo].[ScoreInfo] where [SID] not in ( [SID] from [StuDB].[dbo].[ScoreInfo] order by [SID]) order by [SID] 结果: 此方法是先取出前10条的SID…
SQL表连接查询(inner join.full join.left join.right join) 前提条件:假设有两个表,一个是学生表,一个是学生成绩表. 表的数据有: 一.内连接-inner jion : 最常见的连接查询可能是这样,查出学生的名字和成绩: select s.name,m.mark from student s,mark m where s.id=m.studentid 上面就是我们最常见的inner join,即内连接,把符合student.id=mark.studen…