English 中文(简体)
T-SQL 综合症:Column dbo.Policy。 公司 选择名单无效
原标题:T-SQL Syntax error: Column dbo.Policy.CompanyId is invalid in the select list

有些人能否帮助我指出以下T-SQL syntax有什么错误?

SELECT 
    p.CompanyId, COUNT(*) as PolicyCount, c.CompanyId, c.CompanyName
FROM 
    dbo.Policy p
    INNER JOIN dbo.Company c ON p.CompanyId = c.CompanyId
WHERE 
    p.PolicyIssuingDate BETWEEN @StartDate AND @EndDate
GROUP BY
    p.PolicyId

I keep getting the following syntax error:

Column dbo.Policy.Company 选择清单中Id是无效的,因为清单不包含在按条款分列的总职能或组别中。

任何建议?

<><>UPDATE:

由于你的投入,我将其说出来...... 解决办法:

SELECT 
    p.CompanyId, COUNT(p.PolicyId) as PolicyCount, c.CompanyName
FROM 
    dbo.Policy p
    INNER JOIN dbo.Company c ON p.CompanyId = c.CompanyId
WHERE 
    p.PolicyIssuingDate BETWEEN @StartDate AND @EndDate
GROUP BY
    p.CompanyId, c.CompanyName
最佳回答

According to your query u are trying to count records which have same policyID and whose issue date is between @startdate and @enddate But the problem is u select companyid which is not in group by clause

问题回答

暂无回答




相关问题
How to write this T-SQL WHERE condition?

I ve got two tables: TableA Col1 Col2 TableB Col3 Col4 I want to join them together: SELECT * from TableA join TableB ON (...) Now, in place of ... I need to write an expression ...

Customer and Order Sql Statement

TSQL query to select all records from Customer that has an Order and also select all records from customer that does not have an Order. The table Customer contains a primary key of CustomerID. The ...

Recommended way of querying multiple Versioned tables

Have a win 2003 box with MSSQL 2005 running on it. There is a database which is populated every morning with new/modified SalesOrder made the previous day. The database has several tables: SalesOrder, ...

update duplicate record

I have a table with the following fields Id Name IsPublic i need to write a sql query that updates IsPublic to false where name has a duplicate. Only one of the duplicates should have IsPublic = ...

Define variable to use with IN operator (T-SQL)

I have a Transact-SQL query that uses the IN operator. Something like this: select * from myTable where myColumn in (1,2,3,4) Is there a way to define a variable to hold the entire list "(1,2,3,4)"? ...

Selecting records during recursive stored procedure

I ve got a content management system that contains a hierarchical structure of categories, with sub-categories subject to different ordering options at each level. Currently, that s retrieved by a (...