如何在SQL Server中为SELECT语句的结果设置日期格式

时间:2012-06-12 00:05:30

标签: sql-server

我知道如何在SELECT语句中使用CONVERT函数来更改Date列的格式:

   SELECT 
       StationID
       , CONVERT(varchar, [Date], 101) as Date
       , Value 
   FROM my_table 

但我想知道在运行SELECT语句之前是否可以设置日期格式,当我不知道以下SELECT语句中日期列的名称时:

   SELECT * from FROM my_table 

我的SELECT语句之前是否可以运行任何SET语句或其他T-SQL,以便我可以暂时更改日期格式?

谢谢

2 个答案:

答案 0 :(得分:4)

没有

特别是,您选择的任何日期列实际上都不是格式化的,而是作为日期数据的二进制“格式”中的实际日期数据返回。如果您看到它们已格式化,那是因为您的客户端(管理工作室或其他工具)正在将它们转换为要显示的字符串。

当您使用SELECT *时,显然无法告诉SQL Server对任何特定列进行任何转换,因此无论基础查询返回的数据类型是什么,都将返回数据。因此,无论您的数据类型是否真的是日期,无论如何都不会发生任何操作。

答案 1 :(得分:3)

我很确定没有办法做你所要求的。但是,当您使用编程语言输出日期字符串时,有一些方法可以格式化日期字符串。