Sql server 如何在SQL Server中为SELECT语句的结果设置日期格式
我知道如何在SELECT语句中使用CONVERT函数来更改日期列的格式:Sql server 如何在SQL Server中为SELECT语句的结果设置日期格式,sql-server,Sql Server,我知道如何在SELECT语句中使用CONVERT函数来更改日期列的格式: SELECT StationID , CONVERT(varchar, [Date], 101) as Date , Value FROM my_table 但我不知道在运行SELECT语句之前是否可以设置日期格式,因为我不知道以下SELECT语句中日期列的名称: SELECT * from FROM my_table 是否有任何SET语句或其他T-S
SELECT
StationID
, CONVERT(varchar, [Date], 101) as Date
, Value
FROM my_table
但我不知道在运行SELECT语句之前是否可以设置日期格式,因为我不知道以下SELECT语句中日期列的名称:
SELECT * from FROM my_table
是否有任何SET语句或其他T-SQL可以在SELECT语句之前运行,以便临时更改日期格式
谢谢你我很确定你的要求是无法实现的。但是,当您使用编程语言输出日期字符串时,有一些方法可以对其进行格式化。我敢肯定,没有办法满足您的要求。但是,当您使用编程语言输出日期字符串时,有一些方法可以对其进行格式化。否 特别是,您选择的任何日期列实际上根本没有格式化,而是以用于日期的二进制“格式”作为实际日期数据返回。如果您看到它们被格式化,那是因为您的客户机(ManagementStudio或其他工具)正在将它们转换为字符串以显示 当您使用
SELECT*
时,显然没有办法告诉SQL Server对任何特定列进行任何转换,因此数据将以基础查询返回的任何数据类型返回。因此,无论您的数据类型是否真的是日期,在这一点上都不会发生任何操作。否
特别是,您选择的任何日期列实际上根本没有格式化,而是以用于日期的二进制“格式”作为实际日期数据返回。如果您看到它们被格式化,那是因为您的客户机(ManagementStudio或其他工具)正在将它们转换为字符串以显示
当您使用
SELECT*
时,显然没有办法告诉SQL Server对任何特定列进行任何转换,因此数据将以基础查询返回的任何数据类型返回。因此,无论您的数据类型是否为date,在这一点上都不会发生任何操作。为什么要在不知道列名称的情况下编写代码?请阅读:原因是当用户选择一个选项时,SQL语句会动态生成。如果我想让用户识别列名,我必须设置一个“If”语句的大列表,以找到用户选择的选项。为什么要在不知道列名的情况下编写代码?请阅读:原因是当用户选择一个选项时,SQL语句会动态生成。如果我想让用户识别列名,我必须设置一个“If”语句的大列表,以找到用户选择的选项。