| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > Сортировка базы |
| Автор: AndreyCV 21.12.2005, 19:55 |
| Здраствуйте! Возникла такая проблема. Нужно выводить данный с MySQL в алфофитном порядка, но пока я так и неразобрался как use DBI; my $dbh = DBI->connect("DBI:mysql:база:localhost","юзер","пароль") || die $DBI::errstr; my $result = $dbh->prepare("SELECT * FROM melodii"); $result->execute(); есть поля executor и name. Нужно чтоб сортировка была сначала по первому полю, а потом по второму. Вобщем должно быть Исполнитель и все его песни. Если несложно по покажите на маем примере как. Заранее спасибо. |
| Автор: DemoCode 21.12.2005, 20:06 |
| SELECT * FROM melodii ORDER BY executor, name ASC |
| Автор: sharq 22.12.2005, 15:44 |
| Действительно, лучше всего сортировать записи при помощи sql-запроса, не зря же это предусмотренно. Если нужно в обратном порядке, то пиши DESC, а ASC стоит по умолчанию. Есть еще вариант - сортировать уже при помощи perl, используюя sort.\ |
| Автор: Guest 22.12.2005, 20:37 |
| Работает, прада я еще не разобрался до конца это то что мне нужно или нет. sort Я пот про нее сначали и на шел инфу, единственное я непонял как с базой ее связать |
| Автор: korob2001 23.12.2005, 02:23 |
| Не нужно ничего связывать, сортируй с помощью SQL запроса, работать будет куда быстрее чем sort, да и гемороя меньше. К тому же sort создаст неявно в памяти список из всех элементов, а их может быть и довольно много, в зависимости от размера базы. |
| Автор: Guest 23.12.2005, 20:07 |
| Спасибо, через базу оказалось то что надо, за исключение одного но. С рускими буквами оказалось лажа ((( И еще, я с помощью этой функции SELECT * FROM melodii ORDER BY nomer ASC пытался отсортировать числовое поле. Но почемуто у меня зависал скрипт |
| Автор: Ramirez 24.12.2005, 04:06 | ||
А вот это, по-моему, зависит от того, какое "сравнение" используется в таблице... |
| Автор: Guest 24.12.2005, 12:13 | ||
А можно поподробней. Сравнение в каких таблицах? |