169 похожих чатов

Крч я всегда думал что аргегация возвращает только уникальные записи

согласно условия

select individual, max(date_born)
from people
group by individual;

Вот этот запрос возвращает такие данные
|individual|max |
|----------|-----------------------|
|30 |2010-01-01 00:00:00.000|
|10 |2002-01-01 00:00:00.000|
|20 |2007-01-01 00:00:00.000|

А если использовать этот запрос как подзапросс в where, то он возвращает все совпавшие комбинации, небольшой диссонанс случился

select people.name ,individual, date_born
from people
where (individual ,date_born) in (select individual, max(date_born)from people group by individual);

А этот запрос возвращает вот такие данные
|name |individual|date_born |
|-----|----------|-----------------------|
|vika |10 |2002-01-01 00:00:00.000|
|vika |20 |2007-01-01 00:00:00.000|
|oleg |30 |2010-01-01 00:00:00.000|
|vika |20 |2007-01-01 00:00:00.000|
|lesya|20 |2007-01-01 00:00:00.000|

Как видно сдесь повторяются некоторые записи

Как это можно объяснить, есть некое правило что если запрос является подзапросом то он возращает все уникальные строки согласно условию подзапроса?

11 ответов

30 просмотров

Запрос в подзапросе возвращает сгруппированные записи. Вопрос в том, что хранится в people

Escapewithme-Шумбасов Автор вопроса
Tim Safari
Запрос в подзапросе возвращает сгруппированные зап...

select * from people; |id |individual|date_born |name | |---|----------|-----------------------|-----| |1 |10 |2000-01-01 00:00:00.000|masha| |2 |10 |2001-01-01 00:00:00.000|katya| |3 |10 |2002-01-01 00:00:00.000|vika | |5 |20 |2007-01-01 00:00:00.000|vika | |6 |30 |2010-01-01 00:00:00.000|oleg | |4 |20 |2007-01-01 00:00:00.000|lesya| |7 |20 |2007-01-01 00:00:00.000|vika |

Escapewithme-Шумбасов Автор вопроса
Tim Safari
Запрос в подзапросе возвращает сгруппированные зап...

Ну да, если просто запрос с группировкой возвращает уникальные записи согласно запросу, то выходит что тот же самый запрос если использовать как подзапрос вернёт все данные группируя их.

Timus
ну сделай distinct и не мучай мозг

мозг мучать полезно для развития

Escapewithme-Шумбасов Автор вопроса
Timus
ну сделай distinct и не мучай мозг

А нельзя сделать так чтобы подзапрос вернул сразу уникальные данные и не дублировал их?

Escapewithme-Шумбасов Автор вопроса

Вот, ниже пример

« аргегация возвращает только уникальные записи согласно условия да все верно «А если использовать этот запрос как подзапросс в where, да, потому что внутри (в подзаросе) уникальные, но сам то запрос без группировки, поэтому НЕ уникальные

Escapewithme-Шумбасов Автор вопроса

Я был уверен что если этот запрос возвращает допустим 3 записи и используя этот же запрос как подзапрос то он тоже вернёт 3 записи, но всё работает иначе. На уровне запроса нужно сделать группировку получается. Но сделать так чтобы подзапрос вернул сразу уникальные записи(без повторения записи если условие совпало) без повторения не получится выходит.

Escapewithme Шумбасов
Я был уверен что если этот запрос возвращает допус...

Кури мануал. Конструкция которую ты заюзал работает совершенно не очевидно.

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
14
а где есть mysql cloud кроме яндекс-клауд?
Oleg Nosov
13
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
Не ну фпц - это уже просто троллинг какой-то. Элементарный код нельзя собрать. ЧЯДНТ? program Project1; {$mode delphi} uses SysUtils, Classes, Generics.Collections; var...
Peter
4
вот что получается в интерпрететоре, работает и результаты выгляд разумными, но то как выглядит код мне не нравиться, а понять куда двигаться не очень могу, если кому не лень ...
Fedor
42
Карта сайта