Sql server 2008 查询以选择主表中的计数总和取决于明细表
我有一个数据库,它有这样的表 我无法更改数据库结构 例如,我想写一个查询来计算所有手机的总数(一个摄像头,它的颜色是红色的) 我找到了一个方法,但它太复杂了 如果有样品的话,你能帮我吗Sql server 2008 查询以选择主表中的计数总和取决于明细表,sql-server-2008,Sql Server 2008,我有一个数据库,它有这样的表 我无法更改数据库结构 例如,我想写一个查询来计算所有手机的总数(一个摄像头,它的颜色是红色的) 我找到了一个方法,但它太复杂了 如果有样品的话,你能帮我吗 SELECT SUM(mobile_count) Total FROM [master] M WHERE EXISTS(SELECT 1 FROM [details] WHERE master_fk = M.master_id AND mobile_camer
SELECT SUM(mobile_count) Total
FROM [master] M
WHERE EXISTS(SELECT 1 FROM [details]
WHERE master_fk = M.master_id
AND mobile_camera = 1
AND mobile_color = 'red')
另一方面,我真的希望您为主键选择一个未聚集的索引,因为您使用的是UNIQUEIDENTIFIER
另一方面,我真的希望您为主键选择了一个未分类的索引,因为您使用的是
UNIQUEIDENTIFIER
这会产生所需的结果吗
SELECT SUM(mobile_count)
FROM master INNER JOIN details ON master_id = master_fk
WHERE mobile_camera = 1 and mobile_color = 'red'
这会产生需要的结果吗
SELECT SUM(mobile_count)
FROM master INNER JOIN details ON master_id = master_fk
WHERE mobile_camera = 1 and mobile_color = 'red'
这是一个简单连接的问题,不应该很复杂,请显示您的SQL代码这是一个简单连接的问题,不应该很复杂,请显示您的SQL代码抱歉迟到了,但是我不明白您主要做了什么,因为
选择了一个未加密的索引
@Aroo有很多链接解释为什么使用NEWID()
生成用作聚集索引的GUID是个坏主意:很抱歉,我迟到了,但我不明白您的主旨是什么,因为选择了一个未加密的索引
@Aroo有许多链接解释了为什么使用NEWID()
生成用作聚集索引的GUID是个坏主意: