相关疑难解决方法(0)

SQL Server查询 - 使用DISTINCT选择COUNT(*)

在SQL Server 2005中,我有一个表cm_production,其中列出了所有已投入生产的代码.该表有ticket_number,program_type,program_name和push_number以及其他一些列.

目标:按程序类型和推送号计算所有DISTINCT程序名称

到目前为止我所拥有的是:

DECLARE @push_number INT;
SET @push_number = [HERE_ADD_NUMBER];

SELECT DISTINCT COUNT(*) AS Count, program_type AS [Type] 
FROM cm_production 
WHERE push_number=@push_number 
GROUP BY program_type
Run Code Online (Sandbox Code Playgroud)

这让我在那里,但它计算所有的程序名称,而不是不同的程序名称(我不希望它在该查询中做).我想我无法绕过如何告诉它只计算不同的程序名而不选择它们.或者其他的东西.

sql t-sql sql-server sql-server-2005

402
推荐指数
5
解决办法
87万
查看次数

如何选择列值不明显的每一行

我需要运行一个select语句,返回列的值不相同的所有行(例如EmailAddress).

例如,如果表格如下所示:

CustomerName     EmailAddress
Aaron            aaron@gmail.com
Christy          aaron@gmail.com
Jason            jason@gmail.com
Eric             eric@gmail.com
John             aaron@gmail.com
Run Code Online (Sandbox Code Playgroud)

我需要查询返回:

Aaron            aaron@gmail.com
Christy          aaron@gmail.com
John             aaron@gmail.com
Run Code Online (Sandbox Code Playgroud)

我阅读了很多帖子并尝试了不同的查询无济于事.我认为应该工作的查询如下.有人可以提出替代方案或告诉我查询可能有什么问题吗?

select EmailAddress, CustomerName from Customers
group by EmailAddress, CustomerName
having COUNT(distinct(EmailAddress)) > 1
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2008

137
推荐指数
5
解决办法
21万
查看次数