首页 > 解决方案 > 从天数中获取天数

问题描述

我正在尝试在一长串日期(TxnDate)中捕获一周中的特定日期。我正在使用的以下命令引发以下错误:

列名“TxnDay”无效。

代码

Select DATENAME(dw, ft.[TxnDate]) as TxnDay, ft.[ProductCode], ft.[Site] from dbo.FactTransactions as Ft 
Where ft.[Site] = '1' and TxnDay = 'Tuesday'

编辑:我也尝试过以下错误:

列名“TxnDay”无效。

Select ft.[TxnDate], ft.[ProductCode], ft.[Site] from 
dbo.FactTransactions as Ft
Where ft.[Site] = '1' and ft.[TxnDate] in (SELECT DATENAME(dw, ft. 
[TxnDate]) as TxnDay where TxnDay = 'Sunday')

标签: tsql

解决方案


除非我遗漏了什么,否则我不确定您是否需要WHERE子句中的子查询-您不能这样做:

select 
    ft.[TxnDate], 
    ft.[ProductCode], 
    ft.[Site] 
from dbo.FactTransactions as ft
Where 
    ft.[Site] = '1' 
    and DATENAME(dw, ft.[TxnDate]) = 'Sunday'

推荐阅读