Я был бы очень признателен за помощь / указатели по следующей проблеме.
Справочная информация:
Версия базы данных: Oracle 9i
Java-версия: 1.4.2
Проблема
У меня есть таблица базы данных с несколькими столбцами, представляющими различные метаданные о документе.
например:.
CREATE TABLE mytable
(
document_id integer,
filename varchar(255),
added_date date,
created_by varchar(32),
....
)
Из-за проблем с сетью / задержкой между веб-сервером и сервером базы данных я хотел бы свести к минимуму количество запросов к базе данных.
Документы перечислены на веб-странице, но существуют тысячи различных документов.
Чтобы облегчить навигацию, мы предоставляем фильтры на веб-странице для выбора только документов, соответствующих определенному значению - например, созданный пользователем 'joe bloggs' или созданный '01 -01-2011 '. Кроме того, предоставляется пейджинг, поэтому вызов db вызывает следующие 50 документов или что-то в этом роде.
Сами веб-страницы остаются довольно тупыми - они просто представляют то, что возвращается Java-сервлетом. В настоящее время каждому из этих фильтров присваиваются свои отдельные значения посредством отдельных запросов для различных значений в каждом столбце.
Это занимает довольно много времени из-за задержки в сети и того факта, что это означает 5 дополнительных запросов.
Мой вопрос
Я хотел бы знать, есть ли способ получить эту же информацию в одном запросе?
Например, есть ли способ получить отличные результаты из этой таблицы в такой форме:
DistinctValue Type
01-01-2011 added_date
01-02-2011 added_date
01-03-2011 added_date
Joe Bloggs created_by
AN Other created_by
.... ...
Я предполагаю, что одна из проблем, описанных выше, заключается в том, что типы данных различаются по столбцам, поэтому даты и варианты не могут быть возвращены в столбце "DistinctValue".
Есть ли лучший / стандартный подход к этой проблеме?
Большое спасибо заранее.
Jay
Редактировать
Как я уже упоминал в комментарии ниже, я подумал о возможном более эффективном использовании памяти / нагрузки, который устраняет первоначальное требование для объединения запросов -
Я представляю, как это могло бы работать
вместо заполнения выпадающих
первоначально, чтобы они реагировали на пользователя
набрав, а затем есть «подсказчик»
выпадающий стиль появляется только тех
отдельные значения, которые соответствуют введенным
текст. Я думаю, что это будет означать)
сохраняя отдельные запросы для
отдельные значения, но б) только работает
запросы индивидуально по мере необходимости,
и с) сокращение результатов на
фильтрация уникальных значений на
текст пользователя.