У меня проблема с потенциально простым запросом, который я не могу получить.Я также не совсем уверен, как Google это.Итак, все.
У меня есть 2 таблицы:
- TableA - Содержит основные записи, которые мне нужно вернуть
- TableB - Содержит много записей на одну запись в TableA
Все, что мне нужно сделать, это вернуть записи из таблицы А, которые соответствуют запросу, например:
SELECT Description, Type, Status
FROM TableA
WHERE Status = 2;
, но с этим дополнительным битом в конце (я знаю, что запрос неверный, но, надеюсь, это даст вам представление о том, что мне нужно (PSEUDO CODE):
SELECT ID, Description, Type, Status
FROM TableA
JOIN TableB ON TableB.ID = TableA.ID
WHERE Status = 2
AND (MIN(TableB.StatusChanged) > DATEADD(minute, -15, GETDATE()))
AND TableB.Status < 5;
Поэтому, по сути, я хочу вернуть все записи из TableA, если они имеют статус 2 в TableAи самая ранняя запись в Таблице B имеет возраст не менее 15 минут и значение состояния меньше 5.
Надеюсь, я объяснил это так, чтобы вы могли понять, чего я пытаюсь достичь.