powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / sql order by random
8 сообщений из 8, страница 1 из 1
sql order by random
    #39403191
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У Cache' SQL много функций отсутствует, в том числе и Rand(), Random(), newid() и тд.
Мне нужно отсортировать полученный запрос в случайном порядке.

Код: sql
1.
2.
select * from Persons
order by random()


Код: sql
1.
2.
select * from Persons
order by rand()


Код: sql
1.
2.
select * from Persons
order by newid()


Ни один из запросов не работает. Прошу помочь!!!
...
Рейтинг: 0 / 0
sql order by random
    #39403204
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.TalgatМне нужно отсортировать полученный запрос в случайном порядке.
Не совсем понятна такая надобность...

Но, если запрос делается динамически - можно написать функцию, которая выдаст список свойств класса в произвольном порядке.
Эту последовательность можно вставить в формирование запроса...
...
Рейтинг: 0 / 0
sql order by random
    #39403232
imdb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.TalgatУ Cache' SQL много функций отсутствует, в том числе и Rand(), Random(), newid() и тд.
Странно! Сама функция rand() есть, даже в относительно старых версиях, но при запуске дает ошибку, что ее нет.
Похоже, что в документацию записали, а реализовать забыли!
...
Рейтинг: 0 / 0
sql order by random
    #39403247
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
imdbSabyrov.TalgatУ Cache' SQL много функций отсутствует, в том числе и Rand(), Random(), newid() и тд.
Странно! Сама функция rand() есть, даже в относительно старых версиях, но при запуске дает ошибку, что ее нет.
Похоже, что в документацию записали, а реализовать забыли! RAND() реализован только в диалекте TSQL. если нужно использовать в Caché диалекте, то можно вызвать так $TSQL_RAND() , либо переключится на TSQL диалект
...
Рейтинг: 0 / 0
sql order by random
    #39403365
imdb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorimdbпропущено...

Странно! Сама функция rand() есть, даже в относительно старых версиях, но при запуске дает ошибку, что ее нет.
Похоже, что в документацию записали, а реализовать забыли! RAND() реализован только в диалекте TSQL. если нужно использовать в Caché диалекте, то можно вызвать так $TSQL_RAND() , либо переключится на TSQL диалект
Соседняя RADIANS() спокойно отрабатывает в обычном sql-запросе, без всяких "переключений".
...
Рейтинг: 0 / 0
sql order by random
    #39403420
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
imdbDAiMorпропущено...
RAND() реализован только в диалекте TSQL. если нужно использовать в Caché диалекте, то можно вызвать так $TSQL_RAND() , либо переключится на TSQL диалект
Соседняя RADIANS() спокойно отрабатывает в обычном sql-запросе, без всяких "переключений".Да, потому что эта функция реализована в Caché диалекте
...
Рейтинг: 0 / 0
sql order by random
    #39405024
Фотография ну я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.Talgat,

А написание своей sqlproc в задаче допускается или надо использовать только штатные функции дефолтной инсталляции Cache?
...
Рейтинг: 0 / 0
sql order by random
    #39406192
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
Class SQL.Util
{
ClassMethod Random(max As %Integer = 100, key As %String) As %Integer [ SqlProc ]
{
	return $random(max)
}
}


Код: sql
1.
select *,sql.util_random(100,id) from table


Второй параметр нужен для того, чтобы Каше не надумала оптимизировать вызовы (без него во всех строках будет одно и то же значение)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / sql order by random
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]