【问题标题】:SQL between date range returning a wrong result日期范围之间的 SQL 返回错误结果
【发布时间】:2020-02-28 22:19:03
【问题描述】:

我正在编写一个 SQL 查询来获取日期范围格式之间的行:mm/dd/yyyy

我使用了between 运算符,但结果显示超出日期范围

Select Internship_StartDate1
From [Media_BPM].[dbo].[BP_UGME]
Where TrainingType = 'Medical Internship Training'
  and Internship_StartDate1 Between '01/%/2020%'  AND '06/%/2020%'
Order By Internship_StartDate1 desc

预期结果:仅限 2020 年日期

实际结果是:

Internship_StartDate1
05/16/2018
05/06/2018
05/05/2019
05/05/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/02/2019
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2020
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2019
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2018
05/01/2017
04/30/2018
04/29/2018
04/18/2018
04/14/2017
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2020
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2019
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2018
04/01/2017
04/01/2017
04/01/2017
04/01/2017
03/19/2019
03/18/2018
03/04/2018
03/03/2019
03/03/2019
03/03/2019
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2020
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2019
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2018
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
03/01/2017
02/05/2017
02/03/2019
02/03/2019
02/03/2019
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2020
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2019
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2018
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
02/01/2017
01/20/2019
01/19/2019
01/19/2019
01/13/2019
01/12/2019
01/12/2019
01/12/2019
01/10/2019
01/10/2019
01/10/2018
01/09/2019
01/09/2019
01/09/2017
01/08/2018
01/02/2019
01/02/2019
01/02/2019
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2020
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2019
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2018
01/01/2017
01/01/2017
01/01/2017
01/01/2017
01/01/2009

【问题讨论】:

  • Between '01/%/2020%' AND '06/%/2020%' 将不起作用,因为 'between - and' 语句需要数据类型日期

标签: sql sql-server


【解决方案1】:

我假设您使用 SQL Server。
也许您认为% 在这种情况下是一个通配符,表示任何字符,但事实并非如此。
您可以将% 与运算符LIKE 一起使用,但不能与BETWEEN 一起使用。
使用函数FORMAT()

Select Internship_StartDate1 
from [Media_BPM].[dbo].[BP_UGME] 
where TrainingType = 'Medical Internship Training' 
AND FORMAT(Internship_StartDate1, 'yyyyMM') Between '202001' AND '202006' 
Order By Internship_StartDate1 desc

【讨论】:

  • 感谢答案,我明白了,但是当我使用 format() 时出现此错误“参数数据类型 nvarchar(max) 对格式函数的参数 1 无效。”
  • Internship_StartDate1 的数据类型是什么?你也使用 SQL Server 吗?
  • 是的,使用 SQL Server 2014 Management ,, Internship_StartDate1 的数据类型是 nvarchar
  • 然后把FORMAT(Internship_StartDate1, 'yyyyMM')改成FORMAT(convert(date, Internship_StartDate1, 101), 'yyyyMM')
  • 或者把FORMAT(Internship_StartDate1, 'yyyyMM')写成RIGHT(Internship_StartDate1, 4) + LEFT(Internship_StartDate1, 2)
【解决方案2】:

您显然将LIKE 通配符与其他比较混淆了。 '%' 仅适用于 LIKENOT LIKE

更重要的是,在日期上使用日期比较!这对于优化非常重要。你应该把你的条件写成:

select Internship_StartDate1
from [Media_BPM].[dbo].[BP_UGME]
where TrainingType = 'Medical Internship Training' and
      Internship_StartDate1 >= '2020-01-01' and
      Internship_StartDate1 < '2020-07-01'
order by Internship_StartDate1 desc;

此类比较无需将日期转换为字符串。直接比较允许:

  • 将日期转换为字符串会在处理的每一行上产生开销。
  • 查询优化器选择适当的索引(如果可用)。
  • 查询优化器选择适当的分区(如果有)。
  • 查询优化器选择合适的算法,因为大小统计可能更准确。

【讨论】:

    【解决方案3】:

    我只想补充一点,我最终在我的 SQL 代码中使用了 YYYYMMDD,因为这(似乎)即使没有格式化也总是有效,相​​信我在 MDY(MS 默认)与 DMY(例如德国)很多。因此,对于 2020 年全年,我会这样搜索:

    select Internship_StartDate1 
      from Media_BPM.dbo.BP_UGME
     where TrainingType = 'Medical Internship Training' and
           --  first and last time tick in 2020
           Internship_StartDate1 between '20200101' and '20201231 23:59:59.997'
     order by Internship_StartDate1 desc
    

    【讨论】:

      【解决方案4】:

      只需设置日期时间的格式

       SELECT Internship_StartDate1 from [Media_BPM].[dbo].[BP_UGME]
       WHERE TrainingType = 'Medical Internship Training'
       AND YEAR(CONVERT(date, Internship_StartDate1,103)) BETWEEN '2019' AND '2020'
       ORDER BY Internship_StartDate1 desc
           
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-04-12
        • 2016-09-26
        • 1970-01-01
        • 2014-08-16
        • 2016-01-10
        • 1970-01-01
        • 2017-12-20
        • 1970-01-01
        相关资源
        最近更新 更多