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

Всем привет) Есть задачка самая простая... with t as ( select 1

a, 'A' b,33 c from dual
union all
select 1 id, 'A' b,45 c from dual
union all
select 1 id, 'B' b,1 c from dual
union all
select 2 id, 'B' b,4 c from dual
)
select * from t
where (a,b) in
(
select a,b from t
group by a,b
having count(*)>1
);
Возвращает
1a45
1a33
Может вернуть строки в другом порядке? Ведь явно не указана сортировка

17 ответов

40 просмотров

Любой запрос, если явно не указана сортировка возвращает результат кучей. В твоём случае вывод кучи совпал с твоими ожиданиями и тебе просто повезло. Указывай сортировку и 100% результат будет всегда.

Василий- Автор вопроса
Oracle DBA Linux Admin
Любой запрос, если явно не указана сортировка возв...

Отлично, я так и сказал на собесе, но сказали не верно... Ну как так можно)

Василий
Отлично, я так и сказал на собесе, но сказали не в...

ну они свою точку зрения аргументировали как-то?

Василий- Автор вопроса
Kirill Leontev
ну они свою точку зрения аргументировали как-то?

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

Василий- Автор вопроса

Чат был)

Василий
Чат был)

ну в общем здесь можно, наверное, поспекулировать на тему того, что порядок union all определён (в плане запроса, который выполняется в конкретном порядке), и предикат по a, b его не меняет. но можно - не значит нужно.

Kirill Leontev
ну в общем здесь можно, наверное, поспекулировать ...

Если не говорить о параллельных запросах с concurrent union all

Василий- Автор вопроса
Kirill Leontev
ну в общем здесь можно, наверное, поспекулировать ...

Если определен порядок, первыми будут данные которые последними вошли? На счёт этого не знаю) Но в любом случае, with временная таблица, а там уже не будет сортировки

Василий- Автор вопроса
Василий
Нет)

Зря, надо учить людей

Василий- Автор вопроса
xtender
Зря, надо учить людей

Как учить то)) Им решать как работать, пусть так будет)

Василий
Если определен порядок, первыми будут данные котор...

у вас одна строка это одна ветка union all. union all читается сверху вниз (это видно в плане, кроме случаев параллельного запроса которые упомянул Саян). выдан клиенту будет в том же порядке. если есть order by - будет в том порядке который задан order by

Василий- Автор вопроса
Kirill Leontev
у вас одна строка это одна ветка union all. union ...

Запрос возвращает обратный порядок просто

Василий
Как учить то)) Им решать как работать, пусть так б...

ну вообще то, как проходит интервью - это не конфиденциальная информация, если уж на то пошло (а если она да - вас заставят подписать бумагу). вежливым считается не сливать тестовые задания и сложные вопросы, в которые люди вкладывали силы, но именно вежливым. и это явно не тот случай

Василий- Автор вопроса

Да я это понятно... Просто я хочу разобраться, может это я что-то не учёл) А что за компания и кто соьеседовал, это для меня не важно) главное опыт)

Василий
Да я это понятно... Просто я хочу разобраться, мож...

ну вам не важно, другим любопытно) нестандартный кейс всё-таки, чтобы интервью на середине прервали

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта