T-Sql将多列合并为一列
如何将所有计算日期列合并为一列?是什么样的SQL函数实现了这一点?其余字段是基于计算日期的不同值。我只需要与日期关联的不同值 编辑 我尝试了T-Sql将多列合并为一列,sql,sql-server,tsql,Sql,Sql Server,Tsql,如何将所有计算日期列合并为一列?是什么样的SQL函数实现了这一点?其余字段是基于计算日期的不同值。我只需要与日期关联的不同值 编辑 我尝试了ISNULL和COALESCE函数,但这不是我想要的,因为它仍然会返回这两个日期的所有值。我只需要选定帐户截至日期的数据。我不希望两个日期的数据在同一个帐户上 我还尝试了Select Distinct,但它对我不起作用。假设其中只有一个有值,一个选项是使用合并: select coalesce(date1, date2) from yourtable
ISNULL
和COALESCE
函数,但这不是我想要的,因为它仍然会返回这两个日期的所有值。我只需要选定帐户截至日期的数据。我不希望两个日期的数据在同一个帐户上
我还尝试了Select Distinct,但它对我不起作用。假设其中只有一个有值,一个选项是使用
合并
:
select coalesce(date1, date2)
from yourtable
假设其中只有一个有值,一个选项是使用
coalesce
:
select coalesce(date1, date2)
from yourtable
由于您只有两列,另一种选择是使用
ISNULL
:
SELECT ISNULL(FIRST_CALCULATION_DATE, SECOND_CALCULATION_DATE) AS ActualCalculationDate
FROM TheTable
您应该会收到与COALESCE相同的结果,但有趣的是,在确定结果类型时,它们之间存在一些差异。由于您只有两列,另一种选择是使用
ISNULL
:
SELECT ISNULL(FIRST_CALCULATION_DATE, SECOND_CALCULATION_DATE) AS ActualCalculationDate
FROM TheTable
您应该会收到与COALESCE相同的结果,但有趣的是,在确定结果类型时,它们之间存在一些差异。您可以使用COALESCE
SELECT COALESCE(Calculation_Date, Calculation_Date)
FROM tableName
可以使用COALESCE
SELECT COALESCE(Calculation_Date, Calculation_Date)
FROM tableName
这将不起作用,因为它会返回这两个日期的所有值。我只想要与日期相关联的不同值。@showstepper--然后将
distinct
添加到select
列表中?如果这不起作用,请用预期结果编辑您的问题。这不起作用,因为它会返回两个日期的所有值。我只想要与日期相关联的不同值。@showstepper--然后将distinct
添加到select
列表中?如果这不起作用,请用预期结果编辑您的问题。这不起作用,因为它会返回两个日期的所有值。我只想要与日期关联的不同值。这不起作用,因为它会返回两个日期的所有值。我只想要与日期相关联的不同值。如前所述,您预期的结果是什么?请相应地编辑你的问题——不要只说它不起作用,说为什么——展示你现在的结果和你打算得到的结果。如果您能提供足够的信息,我们愿意提供帮助。如前所述,您的预期结果是什么?请相应地编辑你的问题——不要只说它不起作用,说为什么——展示你现在的结果和你打算得到的结果。如果您提供足够的信息让我们这样做,我们愿意提供帮助。这非常有效。唯一的问题是桌子上的性能非常慢。谢谢你给我指明了正确的方向!也许你需要一个列的索引?这非常有效。唯一的问题是桌子上的性能非常慢。谢谢你给我指明了正确的方向!也许你需要一个列的索引?