Автоматизация построения запросов

0

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

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 раза, но искал более элегантное и адаптивное решение для этого;

  • 0
    Можете ли вы предоставить образцы данных и какие данные вы ожидаете от них? Так что мы можем понять лучше. Что такое Объект O1, что вы подразумеваете под их свойствами, GUID. Что вы имеете в виду под верхними слоями и т.д ..?
  • 0
    второй запрос определяет «X», так что 84 раза вместо X, я хочу заменить что-то, что, в свою очередь, изменится на действительный целочисленный подзапрос, не сделает этого, потому что он не может содержать более одного значения строки (mysql сказал, что так )
Показать ещё 2 комментария
Теги:
automation
mysql-variables

1 ответ

0

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

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

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

сеанс ручного взлома избегал!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню