作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个数据表,我想通过存储过程选择该数据表,以便用户可以将 MS Excel 前端连接到它并使用原始数据作为图表源。
表的原始数据的问题在于日期中存在间隙,因为如果给定日期没有数据(没有该日期的记录),那么当用户尝试绘制图表时就会产生问题。
我也想更新我的存储过程,将其左外连接到日期临时表,以便右侧将以空值形式出现,我可以将其转换为零,以便获得简单的绘图体验。
如何最好地生成开始日期和结束日期之间的单字段日期表?
最佳答案
在 SQL Server 2005 及更高版本中,您可以使用类似以下内容(公共(public)表表达式 CTE)来执行此操作:
DECLARE @DateFrom DATETIME
SET @DateFrom = '2011-01-01'
DECLARE @DateTo DATETIME
SET @DateTo = '2011-01-10'
;WITH DateRanges AS
(
SELECT @DateFrom AS 'DateValue'
UNION ALL
SELECT DATEADD(DAY, 1, DateValue)
FROM DateRanges
WHERE DateValue < @DateTo
)
SELECT * FROM DateRanges
您可以针对您的表LEFT OUTER JOIN
此 CTE 并返回结果。
关于sql - 生成连续日期的 sql 临时表以进行左外连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4737378/
我知道除了知道什么是“最喜欢的编程卡通”之外,stackoverflow 会对我有所帮助:P 这是接受的答案: Bill Karwin 感谢大家的帮助(我想给你们加倍投票) 我的查询结果是这样的(这是
我查询了此查询,该查询将相关图像返回到评论 return $comments = \DB::table('comments')->select('comments.comment','com
如果没有任何地址(内部连接),我有以下 LINQ 返回零。我如何将其设为 Outer Join 然后仅 Take(1)? var results = query.Join(
我是一名优秀的程序员,十分优秀!