metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-09-03 08:39 am

Поведение запроса

Народ, а гляньте в разных СУБД, что покажет такой запрос?
select rand() as a from some_table order by a

Т.е. рандом выбранный из таблицы с несколькими полями и сортировкой по этому же полю. В Firebird, судя по результатам, оно два раза считает рандом - один раз для показа, второй для сортировки.

PS: Firebird не сортирует даже такое:
select * from (select rand() as a from some_table) order by a
Ленивые вычисления без мемоизации и проверки на побочные эффекты у них там что ле.

[identity profile] guamoka.livejournal.com 2010-09-03 09:21 am (UTC)(link)
Тебе муахаха. А вот так куячишь запросы в поте лица, тебе в затылок дышат, когда готово будет?! а оно хрясь, и пополам.

[identity profile] guamoka.livejournal.com 2010-09-03 09:23 am (UTC)(link)
Поэтому у меня стоит для работы:
TOra,
SQL Developer,
SQuirrel

%-)

И это, считай, я по большому счету не работаю. Так, по верхам SQL\DBA.

[identity profile] metaclass.livejournal.com 2010-09-03 09:26 am (UTC)(link)
Хехех. А вот я для таких целей использую самописанный тул, по совместительству являющийся гуем для юзеров, поэтому он вылизан по максимуму.
А скрипты консольным тулом запускаю.