在实际编写sql的过程中,我们往往会遇到一些比较复杂的sql场景,这个时候,我们

利用自查询可以解决.

问题: 返回在每月最后实际订单日期发生的订单

T-sql代码

-- 返回在每月最后实际订单日期发生的订单
-- (Orders placed on last actual order date of the month)

SELECT OrderID, CustomerID, EmployeeID, OrderDate
FROM dbo.Orders
WHERE OrderDate IN
  (SELECT MAX(OrderDate)
   FROM dbo.Orders
   GROUP BY CONVERT(CHAR(6), OrderDate, 112))
order by OrderDate
GO

返回结果:

OrderID     CustomerID EmployeeID  OrderDate
----------- ---------- ----------- -----------------------
10269       WHITC      5           1996-07-31 00:00:00.000
10294       RATTC      4           1996-08-30 00:00:00.000
10317       LONEP      6           1996-09-30 00:00:00.000
10343       LEHMS      4           1996-10-31 00:00:00.000
10368       ERNSH      2           1996-11-29 00:00:00.000
10399       VAFFE      8           1996-12-31 00:00:00.000
10432       SPLIR      3           1997-01-31 00:00:00.000
10460       FOLKO      8           1997-02-28 00:00:00.000
10461       LILAS      1           1997-02-28 00:00:00.000
10490       HILAA      7           1997-03-31 00:00:00.000
10491       FURIB      8           1997-03-31 00:00:00.000
10522       LEHMS      4           1997-04-30 00:00:00.000
10553       WARTH      2           1997-05-30 00:00:00.000
10554       OTTIK      4           1997-05-30 00:00:00.000
10583       WARTH      2           1997-06-30 00:00:00.000
10584       BLONP      4           1997-06-30 00:00:00.000
10616       GREAL      1           1997-07-31 00:00:00.000
10617       GREAL      4           1997-07-31 00:00:00.000
10650       FAMIA      5           1997-08-29 00:00:00.000
10686       PICCO      2           1997-09-30 00:00:00.000
10687       HUNGO      9           1997-09-30 00:00:00.000
10725       FAMIA      4           1997-10-31 00:00:00.000
10758       RICSU      3           1997-11-28 00:00:00.000
10759       ANATR      3           1997-11-28 00:00:00.000
10806       VICTE      3           1997-12-31 00:00:00.000
10807       FRANS      4           1997-12-31 00:00:00.000
10861       WHITC      4           1998-01-30 00:00:00.000
10862       LEHMS      8           1998-01-30 00:00:00.000
10914       QUEEN      6           1998-02-27 00:00:00.000
10915       TORTU      2           1998-02-27 00:00:00.000
10916       RANCH      1           1998-02-27 00:00:00.000
10987       EASTC      8           1998-03-31 00:00:00.000
10988       RATTC      3           1998-03-31 00:00:00.000
10989       QUEDE      2           1998-03-31 00:00:00.000
11060       FRANS      2           1998-04-30 00:00:00.000
11061       GREAL      4           1998-04-30 00:00:00.000
11062       REGGC      4           1998-04-30 00:00:00.000
11063       HUNGO      3           1998-04-30 00:00:00.000
11074       SIMOB      7           1998-05-06 00:00:00.000
11075       RICSU      8           1998-05-06 00:00:00.000
11076       BONAP      4           1998-05-06 00:00:00.000
11077       RATTC      1           1998-05-06 00:00:00.000

(42 row(s) affected)

利用子查询解决复杂sql问题相关推荐

  1. mysql子查询设置_什么是mysql子查询?如何利用子查询进行过滤?

    子查询 MySQL 4.1引入了对子查询的支持,所以要想使用本章描述的SQL,必须使用MySQL 4.1或更高级的版本. SELECT语句 是SQL的查询.迄今为止我们所看到的所有 SELECT 语句 ...

  2. ResultTransformer deprecated 替代方案及HQL无法使用子查询解决

    hibernate 由于从5.2升级成5.4 再用了ResultTransformer封装临时对象时sonar 报错,显示ResultTransformer 过时 官方在5.2版本中将此方法标记为过时 ...

  3. SQL插入数据时连表查询(利用子查询一次性 insert 多条数据)

    标准说明: INSERT 语句中的 SELECT 子查询可用于将一个或多个表或视图中的值添加到另一个表中.使用 SELECT 子查询还可以同时插入多行. INSERT INTO 表名 as a (a. ...

  4. 标量子查询产生的SQL性能瓶颈,该怎么合理优化?

    来自:DBAplus社群 作者介绍 郝昊喆,新炬网络数据库专家.擅长数据库方面的开发.整体架构及复杂SQL的调优,参与了多个行业核心系统的优化工作,目前专注于对开源技术.自动化运维和性能调优技术的研究 ...

  5. mysql 新建子查询_Mysql创建SQL子查询ALIAS

    通常这些被称为视图.例如: CREATE VIEW vMyLongQuery AS SELECT a, b, c FROM (LONG QUERY) X WHERE ... 然后可以像这样引用: SE ...

  6. server多笔记录拼接字符串 sql_第四章、SQL Server数据库查询大全(单表查询、多表连接查询、嵌套查询、关联子查询、拼sql字符串的查询、交叉查询)...

    4.1.查询的类型 declare @value as int set @value = 50 select  'age:'as age,2008 years,@valueas va --这种查询时跟 ...

  7. mysql 单表 子查询_MySQL基本SQL语句之单表查询、多表查询和子查询 | 旺旺知识库...

    一.简单查询: 基本语法: SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * F ...

  8. case when 子查询_标准SQL——子查询、分组查询、多表联查

    点击上方蓝色字关注我们!❈ 一.查询子句: 1.排序子句:order by 列,列.. [asc|desc]  排序, select * from user order by account desc ...

  9. MYSQL:利用子查询进行过滤

    订单存储在两个表中.每个订单包含订单编号.客户ID.订单日期,在Orders表中存储为一行.各订单的物品存储在相关的OrdersItems表中.Orders表不存储顾客信息,只存储顾客ID.顾客的实际 ...

  10. mysql子查询效率高_mysql利用子查询效率怎么样

    我就废话不多说了,大家还是直接看代码吧~create or replace function aa1(a1 integer[],a2 bigint) returns void AS $$declare ...

最新文章

  1. 计算机英语考试试题一附答案,计算机英语考试试题一附答案
  2. Oracle慌了!华为终于对JDK下手了!
  3. R语言使用ggplot2包的快速可视化函数qplot绘制分组箱图(jitter、分组颜色配置)实战
  4. php 自动生成查询密码,PHP自动生成随绝密码
  5. python数据框添加一列无列名_Python将列添加到数据框导致NaN
  6. 给array添加元素_前囧(06篇)Array 方法详解
  7. 代码更换ui图片_不同人眼中的UI设计师都是什么样的?
  8. luogu P1702 突击考试
  9. mysql的学生信息建表语句_SQL语句创建学生信息数据库表的示例
  10. UMLChina公众号文章精选(20220821更新精选)
  11. 【SpringBoot高级篇】springboot实现上传docdocx文件格式转pdf在线预览
  12. 带你了解计算机网络的背景和框架
  13. promise、axios 理解
  14. c语言 逻辑 与或非
  15. python网络爬虫学习的汇总
  16. Redis学习笔记(B站狂神说)(自己总结方便复习)
  17. jsp及Servlet经典面试题以及答案
  18. Python Unit Test - 3 pydoc
  19. uniapp h5 发行
  20. linux中查看网卡mac地址

热门文章

  1. typora中文版官方免费快速下载以及Markdown的一些常用语法、Java知识点
  2. js获取html5 audio 音频时长方法
  3. Graphics samples2
  4. 【转】移动前端工作的那些事---UE/UI架构原型搭建和前端设计之UE架构原型搭建...
  5. Arturia V Collection 8 for mac - Arturia系列合成器插件大合集
  6. 会声会影2018,带你体验不一样的光影世界!
  7. iOS底层探索之KVO(五)—FBKVOController分析
  8. id 和 class 选择器
  9. java 企业 网站源码 后台 springmvc SSM 前台 静态化 代码生成器
  10. 好用的jquery.animateNumber.js数字动画插件