【发布时间】:2017-08-21 12:12:29
【问题描述】:
当我在 sql server 视图中选择行时出现标题错误。
这是我的代码
CREATE VIEW vw_cashbook AS
SELECT cashbooktranno,
cashbookdate,
cashbookrefaccname,
cashbookgroupname,
cashbookaccname,
cashbookdescription,
cashbookreceipt,
cashbookpayment,
(select sum(cashbook.cashbookreceipt) - sum(cashbook.cashbookpayment) from tbl_cashbook) as totalpayment,
company.companyname
FROM tbl_cashbook cashbook
LEFT OUTER JOIN tbl_companyregistration company
ON cashbook.branchid = company.companyid
group by cashbooktranno, cashbookdate, cashbookrefaccname, cashbookgroupname, cashbookaccname,
cashbookdescription, cashbookreceipt, cashbookpayment, company.companyname
现在,此代码用于从表中创建视图。 这段代码非常完美,因此根据我的视图也创建的代码。 现在,问题是当我从创建的视图中选择行或编辑视图时,它会显示错误
子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。
这是我对视图的选择查询
SELECT TOP 1000 [cashbooktranno]
,[cashbookdate]
,[cashbookrefaccname]
,[cashbookgroupname]
,[cashbookaccname]
,[cashbookdescription]
,[cashbookreceipt]
,[cashbookpayment]
,[totalpayment]
,[companyname]
FROM [AutoFinanceSoftware].[dbo].[vw_cashbook]
那么我的查询有什么问题还是有其他问题。
【问题讨论】:
-
您能告诉我们您用来从该视图中选择的查询吗?
-
您在创建视图时是否收到该错误?
-
@MartinBrown 我已经更新了我的问题中的选择查询,请查看它。
-
@LasseV.Karlsen 没有。创建视图时我没有收到任何错误。
-
如果只执行视图创建的 SELECT 部分会发生什么,它也会失败吗?
标签: sql-server tsql