视图和存储过程中的结果不同

时间:2013-10-25 06:46:45

标签: sql sql-server sql-server-2008

我的表结构如下

enter image description here

我正在为此表创建视图

  

SELECT从dbo.tbPatientReport

输入

在像这样的表数据中

enter image description here

如果我从sql查询执行视图,那么它将提供类似

的输出
  

选择从view_abc输入

enter image description here

所需输出

Desired Output

3 个答案:

答案 0 :(得分:2)

您应该根据需要在结果中格式化日期。 e.g。

SELECT FORMAT( Entered,'MM/dd/yyyy hh:mm:ss tt','en-US') AS 'US'

FORMAT是作为Sql Server 2012的一部分引入的新内置字符串函数之一。它使用可选的culture参数值返回以指定格式格式化的值。它不是Sql Server本机函数,而是.NET CLR依赖函数。

  

语法:格式(值,格式[,文化])

修改 你能测试一下这个吗。

SELECT CONVERT(VARCHAR(20), SYSDATETIME(), 22)

Format: MM/DD/YY HH:MI:SS AM
Output: 10/25/13 2:21:00 PM

唯一的问题是你无法获得FullYear。

答案 1 :(得分:1)

我有链接 Date and Time function

用于日期和时间转换 在此链接中,所有可用的日期和时间功能

答案 2 :(得分:0)

表格结构中的[已输入]列[日期时间]不允许空值,但未勾选。

您使用的是哪个版本的SQL Management Studio?您是在普通选择查询中选择数据还是选择查看数据? 在旧版本中,“查看”会打开编辑窗口,代码位于顶部。

在编辑视图中,最后一行始终为NULL,因为它需要新数据。