2009-09-13 3 views
1

Я сохранил различные записи в базе данных MySql «orkut». Теперь я хочу сортировать эту базу данных через java-программу. Я подключился к базе данных через драйвер jdbc. Теперь я хочу отсортировать эту базу данных в порядке убывания поля «число» типа «int», но не знаю команд. У меня есть контрольная переменная «con», которая обозначает соединение с базой данных MySql.Как отсортировать базу данных MySql?

Еще одна вещь, есть поле «sr_no», которое обозначает серийный номер. записи, и это не первичный ключ.

Я хочу, чтобы это поле не изменилось после сортировки базы данных в виде серийного номера. не должны меняться при изменении порядка записей.

Я хочу, чтобы эта сортировка постоянно хранилась в одной базе данных. Я не хочу сортировать ResultSet. Я хочу отсортированную базу данных.

+0

Кстати, вы называете «базу данных» фактической таблицей. База данных - это набор таблиц. Вы уже работали с DBase III DBF? :) –

ответ

7

Не пытайтесь сортировать это через Java - вы будете убивать себя. SQL имеет предложение order by, которое делает именно это. Вот SQL:

select 
    number, 
    sr_no 
from 
    tbl 
order by 
    number desc 

Также обратите внимание, что вы не можете иметь постоянно отсортированную базу данных. Способ хранения данных не может быть сохранен в любом порядке, который вы выберете. Вы должны never рассчитывать на то, что база данных будет одинаковой, если вы не используете order by в своем запросе.

+1

+1 «Ты убьешь себя» - послушай этого человека. –

+0

+1 - еще один приятный ответ. – duffymo

1

как eric сказал, что у вас нет постоянной сортированной базы данных. Но если вы хотите очень часто выполнять этот запрос в большом наборе данных, вы можете делать индексацию, поддерживаемую различными базами данных.

Это ускорит поиск и сортировку для определенного ключа.

+0

Да, мне нужно выполнить это для очень большого набора данных. Он содержит миллионы записей. Не могли бы вы объяснить мне, как это сделать, используя индексирование MySQL. Я использую MySQL. Я заставляю вас за это. –

+0

просто необходима создать индекс для таблицы и при сортировке использования выберите номер, sr_no из TBL порядка номера по алфавиту –

Смежные вопросы