Я пытаюсь запросить iSeries DB2 v6r1m0. Обычно я тестирую свои операторы SQL в System i Navigator перед их использованием в ADO.Net.Группа DB2 Только таблица 2 делает дубликаты
Я проследил свою проблему до этого, но я не уверен, как это исправить.
SELECT a.id , a.otherstuff , MAX(a.date || ' ' || a.time) as adatetime /* I'm sure it's not this line */ , b.id , b.city , b.state , MAX(b.date || ' ' || b.time) AS bdatetime FROM table1 a INNER JOIN table2 b ON a.id = b.id GROUP BY a.id, a.otherstuff, b.id, b.city, b.state
Что происходит, что он показывает все b.cities и b.states, даже если я просто хочу b.city и b.state с максимальным значением.
a.id a.otherstuff a.adatetime b.id b.city b.state b.datetime a.dup1 a.dup1 a.dup1 b.dup1 San Francisco CA 1-Jan 1:00 a.dup1 a.dup1 a.dup1 b.dup1 Sacramento CA 1-Jan 2:00 a.dup1 a.dup1 a.dup1 b.dup1 other cities WA 11-Jan 3:00 a.dup2 a.dup2 a.dup2 b.dup2 San Francisco CA 11-Jan 1:00 a.dup2 a.dup2 a.dup2 b.dup2 Sacramento CA 11-Jan 2:00 a.dup2 a.dup2 a.dup2 b.dup2 other cities WA 11-Jan 3:00
Почему это происходит?
_ "Я просто хочу b.city и b.state с max value "_ - как это отражается в условиях запроса? Подсказка: условия обычно появляются в предложении 'WHERE'. – mustaccio
Просьба также показать результат, который вы хотите. – WarrenT