Я пытаюсь выбрать самую последнюю дату из одной таблицы (счета-фактуры) для клиента за другой таблицей.Я ищу не одного клиента, а нескольких.То, что я хочу сделать, выглядит примерно так:
select C.[Last Name], C.[First Name], C.[State], I.[Date]
From myDb.dbo.Customer C
left join myDb.dbo.Invoice I on I.CustomerID = C.CustomerID
where c.state=@State and i.date = max(i.date)
Я знаю, что у меня не может быть Max()
там, где я пытался использовать HAVING
.Я не могу назначить локальную переменную для customerID
и сделать where i.date = (select...)
.Я пытаюсь сохранить все это как один оператор, поскольку он выполняется на нескольких БД из одной БД.
update:
Я решил изменить свои требования к дизайну, поскольку это не былонаиболее оптимальное решение.