2013-07-22 5 views
0

У меня есть несколько таблиц, которые имеют поле userid guid t hat. Мне нужно получить счетчик 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