【发布时间】:2013-03-28 22:36:42
【问题描述】:
我正在使用 SQL Server Management Studio 并尝试使用聚合函数创建一个视图,然后我将查询该视图,以便我可以将所需的所有数据点放在一起。
我正在查看包含以下内容的表格: 联系人表:
联系方式 123 姓氏溢出 名字堆栈调用表:
contactid 123 开始时间 2013 年 3 月 4 日 contactid 123 开始时间 2/2/2013 contactid 123 开始时间 2013 年 1 月 3 日我正在尝试创建一个视图,以便获取最大日期(2013 年 3 月 4 日)以及联系人 ID 和姓名。但是,由于某种原因,我的查询正在拉多个开始时间。
这就是我创建视图的方式:
Create VIEW LastIntakeView
AS SELECT c.contactid, c.lastname, c.firstname, ca.starttime
FROM sfcd.dbo.Contacts c, sfcd.dbo.Calls ca
WHERE ca.starttime=(select MAX(cl.starttime)
from sfcd.dbo.Calls cl where
ContactTypeID=29 group by cl.contactid);
我收到此错误消息:Msg 512, Level 16, State 1, Line 2 子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。
我尝试了各种方法来获取最大日期。任何帮助,将不胜感激。 谢谢!
【问题讨论】:
-
Please stop using antique
FROM a,bsyntax。另请指定您使用的 SQL Server 版本。
标签: sql sql-server view