sql - SSMS 按日期时间字段过滤数据
问题描述
我有一个日期时间字段“createdDTTM”,格式为 2009-07-27 15:22:57.427
我想通过应用从 2019 年 1 月 1 日到 2019 年 1 月 31 日的过滤器来提取数据。
我已经尝试了我所知道的一切。Cast、Convert、Date 有各种组合,但一切都变得无效。
我试过以下代码:
SELECT p.fullname,
p.dateofbirth,
po.enterprisemrn,
pro.FullName,
o.OrderName,
o.createdDTTM,
o.WherePerformed,
o.OrderNumberEXT,
a.LocationName,
a.apptnumberEXT,
OrderStatus
FROM report.AHS_Order o
JOIN report.AHS_Provider pro ON o.OrderingProviderID = pro.ID
JOIN report.AHS_Patient p ON p.ID = o.PatientID
JOIN report.AHS_Appointment a ON a.PatientID = p.ID
JOIN report.AHS_Patient_Iorg pio ON pio.personID = p.ID
JOIN report.AHS_Patient_Other po ON po.id = p.ID
WHERE p.IsInactiveFLAG = 'N'
AND p.IsDeceasedFLAG = 'N'
AND p.LastName <> 'test'
AND p.LastName <> 'allscripts'
AND o.OrderStatus = 'Active'
OR o.OrderStatus = 'Complete'
AND pio.OrganizationName LIKE '%starling%'
OR o.OrderStatus = 'In Progress'
OR o.OrderStatus = 'Need Information'
AND o.OrderType = 'L'
AND CONVERT(date, o.createdDTTM) > CONVERT(date, '20190101');
我也尝试过 Cast(), Dateadd(dd,.....),我不知道其他的。
有人可以建议 where 子句中的代码模式是什么错误吗?
在此处查看日期列图像:在此处 输入图像描述
解决方案
如果 o.createdDTTM 是日期时间字段,那么这应该可以工作
SELECT p.fullname,
p.dateofbirth,
po.enterprisemrn,
pro.FullName,
o.OrderName,
o.createdDTTM,
o.WherePerformed,
o.OrderNumberEXT,
a.LocationName,
a.apptnumberEXT,
OrderStatus
FROM report.AHS_Order o
JOIN report.AHS_Provider pro ON o.OrderingProviderID = pro.ID
JOIN report.AHS_Patient p ON p.ID = o.PatientID
JOIN report.AHS_Appointment a ON a.PatientID = p.ID
JOIN report.AHS_Patient_Iorg pio ON pio.personID = p.ID
JOIN report.AHS_Patient_Other po ON po.id = p.ID
WHERE p.IsInactiveFLAG = 'N'
AND p.IsDeceasedFLAG = 'N'
AND p.LastName <> 'test'
AND p.LastName <> 'allscripts'
AND o.OrderStatus = 'Active'
OR o.OrderStatus = 'Complete'
AND pio.OrganizationName LIKE '%starling%'
OR o.OrderStatus = 'In Progress'
OR o.OrderStatus = 'Need Information'
AND o.OrderType = 'L'
AND (o.createdDTTM >= '2019-01-01 00:00:00' AND o.createdDTTM <='2019-01-31 23:59:59');
推荐阅读
- node.js - Amazon S3 + Lambda (Node.JS) 对 s3.upload() 方法的说明
- r - How to create a new variable that shows different combinations of 4 dummy variables?
- loopback4 - 如何在环回4中创建三个模型之间的关系?
- javascript - 未添加到 JavaScript 对象的新元素
- excel - 自动过滤和使用 .End 后如何使用 VBA 粘贴为值
- javascript - 幻灯片 Javascript 代码 - 页面在没有 JS 的情况下也能正常工作,不能与 JS 一起工作
- swift - 如果我知道一个字段的值,如何获取 FireStore 文档的 ID?(在斯威夫特)
- c# - 关联/链接单个表中的记录
- android - android/kotlin:Material Button 显示一个灰色框,然后该框消失
- javascript - 如何更改传单簇中的标记颜色?