2013-07-22 30 views
0

我有多个具有userid guid字段的表是唯一的。我需要获得所有这些表中所有行的用户ID的DISTINCT计数。我还需要在控制器中访问此计数。我如何在实体框架中做到这一点?或者,使用某种存储过程会更好吗?谢谢。从多个表中获取唯一的行

回答

0

如何使用UNION关键字?

SELECT guid FROM TABLE1 
UNION 
SELECT guid FROM TABLE2 
UNION .... 
SELECT guid FROM TABLEN 

参见:http://www.w3schools.com/sql/sql_union.asp

注意UNION总是选择不同的值。所以,你应该很好。

您可以简单地使用查询嵌套获取计数。

Select count(City) FROM 
(SELECT City FROM Customers 
UNION 
SELECT City FROM Suppliers 
ORDER BY City); 
+0

谢谢,但我该如何在控制器中使用这个实体框架? –

+0

你在使用实体SQL吗? http://msdn.microsoft.com/en-us/library/bb399797.aspx 下面是C#的示例 http://stackoverflow.com/questions/6483711/union-in-entity-framework – shauvik

相关问题