Это может быть реализовано с помощью LEFT JOIN.Сначала нам понадобится базовая таблица для хранения определенных значений ИД оборудования, которые мы ищем:
CREATE TABLE #CertainValues
(
EquipmentID int
)
INSERT INTO #CertainValues(EquipmentID) VALUES (1)
INSERT INTO #CertainValues(EquipmentID) VALUES (2)
INSERT INTO #CertainValues(EquipmentID) VALUES (3)
Затем мы можем присоединить 135 известных таблиц к этой базовой таблице, используя ихсоответствующие поля [EquipmentID].Чтобы избежать проблем с кардинальностью (дублирование) из-за того, что [EquipmentID] появляется в нескольких строках одной таблицы, лучше использовать подзапрос для получения подсчетов по [EquipmentID] в каждой из 135 таблиц.Это также дает нам более значимый набор результатов, который показывает количество строк в таблице для каждого из определенных значений , которые мы ищем.Ниже приведен пример набора результатов:
EquipmentID T001 T002 ... T134 T135
----------- ---- ---- ... ---- ----
1 0 1 ... 2 3
2 3 2 ... 1 0
3 0 0 ... 0 0