Автоматизация построения запросов - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть следующий запрос

select count(t1.guid)
from table t1
where t1.id=X;

X - набор результатов этого запроса

select ID 
from table t2 
where t2.flags=65537;

Приведенный выше запрос возвращает 84 результата, все с типом данных INT.

id является первичным ключом в таблице t2 и внешним ключом в таблице t1;

guid является первичным ключом в таблице t1 и больше нигде не существует.

Объект O1 имеетуникальный идентификатор из таблицы, который объявляет все объекты и их свойства. (t2) GUID в таблице t1 присваивает уникальный идентификатор каждому экземпляру объекта O1, вызываемому верхними уровнями.Я хочу видеть количество дубликатов каждого объекта, который удовлетворяет условиям во втором запросе.

Полагаю, мне следует объявить переменную и функцию, которая использует указанную переменную, но не знает, с чего начать и какпродолжайте.

Я однажды решил проблему с помощью взлома рук 84 раза, но искал более изящное и более адаптивное решение для этого;

1 Ответ

0 голосов
/ 13 сентября 2018

После целого дня, проведенного за этим, выяснили

Просто свяжите два опубликованных запроса вместе, но замените оператор "=" на "в"

select count(t1.guid)
from table t1
where t1.id in
(select t2.ID 
from table t2 
where t2.flags=65537);

сеанс хакерстваизбегать!

...