Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ... / 7 сообщений из 7, страница 1 из 1
30.08.2007, 14:59
    #34764831
Constantine Kulak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
Имею список неких Id, которые хочу пересортировать. Использую PreparedStatement из JDBC. Можно ли как-то передать список в IN? Строчку с Id, разделенными запятой пробовал - не работает :)

Или есть какие-нибудь еще альтернативы? По особенностям дизайна не хочется сортировать, когда я этот список в первый раз получаю.
...
Рейтинг: 0 / 0
30.08.2007, 15:13
    #34764909
muma1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
UNION ?
...
Рейтинг: 0 / 0
30.08.2007, 15:26
    #34765002
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
IN(SELECT mystringtosetof('1,2,3,4,5,6,....')

(Function mystringtosetof (text) RERURNS SETOF int ....
STABLE)
...
Рейтинг: 0 / 0
30.08.2007, 15:27
    #34765006
assa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
yfdthyjt nfr assaIN(SELECT * FROM mystringtosetof('1,2,3,4,5,6,....')

(Function mystringtosetof (text) RERURNS SETOF int ....
STABLE)
...
Рейтинг: 0 / 0
30.08.2007, 16:01
    #34765179
pamir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
Constantine KulakИмею список неких Id, которые хочу пересортировать. Использую PreparedStatement из JDBC. Можно ли как-то передать список в IN? Строчку с Id, разделенными запятой пробовал - не работает :)

Или есть какие-нибудь еще альтернативы? По особенностям дизайна не хочется сортировать, когда я этот список в первый раз получаю.Не понял, в чем проблема. Было у меня такое - динамически на клиенте формировал строку
select (бла-бла-бла) where field in (?,? (тут динамически делается нужное число вопросиков)... потом дописываешь order by
Потом препаришь строку
PreparedStatement ps = ....

и опять же в цикле делаешь
ps.setInt(i, твое очередное значение)

Потом выполняешь запрос.

Если я правильно понял задачу.
...
Рейтинг: 0 / 0
30.08.2007, 22:51
    #34766209
Constantine Kulak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
pamirНе понял, в чем проблема. Было у меня такое - динамически на клиенте формировал строку
select (бла-бла-бла) where field in (?,? (тут динамически делается нужное число вопросиков)... потом дописываешь order by
Потом препаришь строку
PreparedStatement ps = ....

и опять же в цикле делаешь
ps.setInt(i, твое очередное значение)

Потом выполняешь запрос.

Если я правильно понял задачу.
Число вопросиков не известно заранее. Следовательно, пропадает смысл PreparedStatement, т. к. оно для каждого запроса новое.
...
Рейтинг: 0 / 0
30.08.2007, 22:57
    #34766215
Constantine Kulak
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ...
assayfdthyjt nfr assaIN(SELECT * FROM mystringtosetof('1,2,3,4,5,6,....')

(Function mystringtosetof (text) RERURNS SETOF int ....
STABLE)
Спасибо! Это уже лучше, правда, все равно придется строчку склеивать... А интересно, оно по производительности будет нормально? И скомпилится (я не силен в точной терминологии, извините. ну я имел в виду план построится) один раз только если я так напишу?
IN (SELECT * FROM mystringtosetof(?))
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Можно ли сделать типа SELECT Id FROM ... WHERE Id IN (?) ORDER BY ... / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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