gpt4 book ai didi

sql-server - 两个日期之间的sql,可以为空

转载 作者:行者123 更新时间:2023-12-03 01:31:12 24 4
gpt4 key购买 nike

我是 TSQL 新手。我需要编写一个返回过滤记录的存储过程。因此用户有两个日期要输入。他可以只输入一个日期,或两个日期,或两者都输入,或任意一个。

在存储过程中,我有两个参数@From、@To - 日期类型。我需要搜索记录。

如果用户没有输入日期 - 我不关心选择查询中的日期。

如果用户输入了 2 个日期 - 我需要包含它们进行搜索。

如果用户输入@From 日期 - 我需要搜索截至今天的内容。

如果用户输入@To 日期 - 我需要搜索小于@To 的日期。

感谢您的帮助。

最佳答案

SELECT ColumnList
FROM MyTable
WHERE
(@FromDate IS NULL OR FromDateColumn >= @FromDate)
AND (@ToDate IS NULL OR ToDateColumn <= @ToDate )

(但请注意,这可能会因参数嗅探而受到不合适的缓存查询计划的影响,特别是在 WHERE 子句中存在大量参数条件的情况下)

关于sql-server - 两个日期之间的sql,可以为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21232652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com