1 - 3 题:

数据表结构:

OrderID    ProductID  OrderDate      SaleAmount

1        1       2015-01-01    100

2        6       2015-02-01    900

3        1       2015-11-01    100

....

1. 找出2015年整年中销量最好(订单量最多)的3款产品。如果有多种方法实现更佳。

结果:

ProductID  SaleQuantity

....

2. 找出2015年12个月中每个月销售总额最高的3个产品(如果存在相同的销售总额就一齐输出,例如第4名和第5名的销售总额恰好与第3名相同,同样输出)。如果有多种方法实现更佳。

结果:

SaleMonth  ProductID   SaleAmount

2015-01       X      11111

2015-02       Y      11111

3. 对每个产品在每一年内的按季度进行一个连续的销售额累加。如果有多种方法实现更佳。

4. 2015年全年销售总额最高的5款产品的每张订单在其订单时间过去一年内最高的销售额。如果有多种方法实现更佳。

5. 拼接结果集

;WITH T1 AS (
SELECT 'A' AS Col1
UNION
SELECT 'B' AS Col1
),

T2 AS (
SELECT 'C' AS Col1
UNION
SELECT 'D' AS Col1
UNION
SELECT 'E' AS Col1
UNION
SELECT 'F' AS Col1
),

T3 AS (
SELECT 'G' AS Col1
)

把这三个结果集拼接成:

T1_Col1   T2_Col1   T3_Col1

A       C      G     

B       D      NULL

NULL      E      NULL

NULL      F      NULL

6. 合并字符串

表:tblOrder

OrderID  CustomerID

1      1

2      1

3      1

4      2

5      3

6      2

7      4

8      4

....

按CustomerID为单位,把每个Customer的OrderID用逗号(,)合并在一起成为一个字符串,结果如下:

CustomerID  OrderIDs

1        1,2,3

2        4,6

3        5

4        7,8

....

如果有多种方法实现更佳。

7. 寻找缺失数据区间。如果有多种方法实现更佳。

数据:

InvNo  

1

2

3

6

8

9

19

结果:

StartNo  EndNo

4        5

7        7

10      18

8. 构造数据

数据:

Date      Value

2015-01-01    1

2015-01-03    2

2015-01-05    3

2015-01-07    4

2015-01-08    5       

构造上面数据的N个副本,每个数据副本的最小日期(字段Date)为上一个副本的最晚日期加1天,字段Value保持和上一个副本一样。假设N为3,最终数据如下:

2015-01-01    1
2015-01-03    2
2015-01-05    3
2015-01-07    4
2015-01-08    5
2015-01-09    1
2015-01-11    2
2015-01-13    3
2015-01-15    4
2015-01-16    5
2015-01-17    1
2015-01-19    2
2015-01-21    3
2015-01-23    4
2015-01-24    5

9. 编写T-SQL产生下列数据

结果:

1
1
2
3
5
8
13
21
34

....

2584

10. 水池注水法/水柱灌水法

假设有5个圆柱体容器,每个圆柱体容器中有不同数量的球体,现在有N个球体可以填入这5个圆柱体容器中,需要按照灌水的方式先填充球体最少的圆柱体,再依次递增。比如:

圆柱体1: O

圆柱体2: OOOO

圆柱体3: OOOOOOO

圆柱体4: OOOOOOOOOO

圆柱体5: OOOOOOOOOOOO

O代表了圆柱体中的球体,现在手头上有12个新的球体,需要对圆柱体1->圆柱体2->圆柱体3(由少至多)分配球体,要均匀分配。

用T-SQL计算出每个圆柱体里面大概可以分配到多少份额的球体。

SQL Server ->> T-SQL查询面试题之实例版的更多相关文章

  1. 【转】SQL Server T-SQL高级查询

    SQL Server T-SQL高级查询 高级查询在数据库中用得是最频繁的,也是应用最广泛的. Ø 基本常用查询 --select select * from student; //查询student ...

  2. SQL SERVER中XML查询:FOR XML指定PATH

    SQL SERVER中XML查询:FOR XML指定PATH 前言 在SQL SERVER中,XML查询能够指定RAW,AUTO,EXPLICIT,PATH.本文用一些实例介绍SQL SERVER中指 ...

  3. Sql Server 存储过程中查询数据无法使用 Union(All)

    原文:Sql Server 存储过程中查询数据无法使用 Union(All) 微软Sql Server数据库中,书写存储过程时,关于查询数据,无法使用Union(All)关联多个查询. 1.先看一段正 ...

  4. SQL Server数据库————连接查询和分组查询

    SQL Server数据库————连接查询和分组查询 分组查询 select 列from  <表名> where  …… group by  列 注意:跟order  by一样group ...

  5. (4.21)sql server中复制查询结果集

    在查询结果窗口中复制列标题似乎是一项简单的任务,但对于业余爱好者来说,这可能是一场噩梦. 没有可见的指令/链接/按钮,其中一个可以使用列标题单击和复制所选数据.让我们看看如何在SQL Server M ...

  6. SQL Server跨服务器查询的实现方法,OpenDataSource

    SQL Server跨服务器查询的方法我们经常需要用到,下面就为您介绍两种SQL Server跨服务器查询的方法,如果您感兴趣的话,不妨一看. SQL Server跨服务器查询方法一:用OPENDAT ...

  7. SQL Server多条件查询的实现

    SQL Server多条件查询的实现 SQL Server多条件查询我们经常会用到,下面就教您如何使用存储过程实现SQL Server多条件查询,希望对您学习SQL Server多条件查询方面有所帮助 ...

  8. SQL Server参数化SQL语句中的like和in查询的语法(C#)

    sql语句进行 like和in 参数化,按照正常的方式是无法实现的 我们一般的思维是: Like参数化查询:string sqlstmt = "select * from users whe ...

  9. SQL Server 2012 - SQL查询

    执行计划显示SQL执行的开销 工具→ SQL Server Profiler : SQL Server 分析器,监视系统调用的SQL Server查询 Top查询 -- Top Percent 选择百 ...

随机推荐

  1. Linux安装python3.6.3

    一: (1)wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz 下载安装包 (可以到网站下载,然后上传到Linux) (2)ta ...

  2. 转 zabbix 用户建立和中文化

    1. 1 登陆和配置用户   简介 本章你会学习如何登陆Zabbix,以及在Zabbix内建立一个系统用户. 登陆 这是Zabbix的“欢迎”界面.输入用户名 Admin 以及密码 zabbix 以作 ...

  3. Java 的多态

    1    多态的概念 多态(?) 可以理解为多种状态/多种形态 同一事物,由于条件不同,产生的结果不同   程序中的多态 同一引用类型,使用不同的实例而执行结果不同的. 同:同一个类型,一般指父类. ...

  4. SpringCloud---分布式配置中心---Spring Cloud Config

    1.概述 1.1 Spring Cloud Config是Spring Cloud的一个全新项目:   作用:为分布式系统中的基础设施.微服务应用提供集中化的外部配置支持:   分为服务端.客户端2个 ...

  5. vue相关问题在工作中的问题及ui组件及html样式搭建相关网站下载资源

    https://youzan.github.io/vant/#/zh-CN/nav-bar http://www.builive.com/docs/api/index.html    bui框架BUI ...

  6. 在Eclipse或工作空间中 ,复制或修改项目后,把项目部署后发现还是原来的项目名称

    1 问题引出 1 在eclipse中直接复制一个项目,修改名称之后,然后部署,部署之后的项目名称还有原来的项目名称 2 在eclipse的工作空间中直接复制一个项目,修改名字之后,发布也会出现同样的问 ...

  7. Android AsyncTask异步加载WebAPI

    之前做的程序一直存在很多问题,因为需要加载的Activity需要从网络加载数据.并没有完全正确的使用异步的方法去加载! 之前用的虽然是AsyncTask,但是在加载完成的时候还是并没有使用AsyncT ...

  8. uwsgi错误invalid request block size

    uwsgi错误invalid request block size 今天使用uwsgi启动django代码,然后打开浏览器输入http://localhost:8000/admin.后台出现下面错误 ...

  9. wordpress编辑器选择ckeditor、ckfinder

    CKEditor for WordPress 搜索安装 上传功能需要ckfinder 下载 CKFinder for PHP: http://ckfinder.com/download 上传ckfin ...

  10. React.js 小书 Lesson23 - dangerouslySetHTML 和 style 属性

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson23 转载请注明出处,保留原文链接和作者信息. 这一节我们来补充两个之前没有提到的属性,但是在 ...