Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не могу правильно сформировать запрос
 
 автор: maloi_m3   (12.04.2011 в 04:45)   письмо автору
 
 

Всем привет, проблем собственно вот в чём, делаю выборку из таблицы но отсортировать нужно по рейтингу, а рейтинг высчитывается из двух колонок rating делённое q_vote (то есть сумма оценок на количество проголосовавших), помогите други.

Пробовал так:

$dbPatern = "SELECT * 
                 FROM table1 
                     WHERE status = 'approve' 
                     ORDER BY rating/q_vote DESC; 

  Ответить  
 
 автор: cheops   (12.04.2011 в 07:24)   письмо автору
 
   для: maloi_m3   (12.04.2011 в 04:45)
 

Вообще запрос должен работать, он выдает какую-то ошибку или сортирует неправильно?

  Ответить  
 
 автор: maloi_m3   (12.04.2011 в 10:12)   письмо автору
 
   для: cheops   (12.04.2011 в 07:24)
 

Ошибок нет, сортирует не правильно.

  Ответить  
 
 автор: cheops   (12.04.2011 в 13:06)   письмо автору
 
   для: maloi_m3   (12.04.2011 в 10:12)
 

В SELECT добавьте это выражение и выведите его наряду с другими данными
SELECT *, rating/q_vote AS rat
FROM table1  
WHERE status = 'approve'  
ORDER BY rat DESC; 
Оно правильно вычисляется, сортируется? Никаких аномалий в его вычислении нет?

  Ответить  
 
 автор: maloi_m3   (12.04.2011 в 14:35)   письмо автору
 
   для: cheops   (12.04.2011 в 13:06)
 

Разобрался, мой вариант рабочий как ты и говорил, там другое мешало правильно работать. Но за интересное решение и помощь спасибо.

Возник новый вопрос в этой строке:

$genreUrl .= '<a href="?cat='.trim($genreMas[$i]).'" class="ind_genre">'.$genreMas[$i].'</a>';


вот такую каку пишет Undefined offset: 1, не подскажешь что не так?

  Ответить  
 
 автор: cheops   (12.04.2011 в 14:41)   письмо автору
 
   для: maloi_m3   (12.04.2011 в 14:35)
 

Вероятно, не существует элемента массива с индексом $i, можно попробовать поставить проверку, при помощи isset() - это должно решить проблему
<?php
  
if(isset($genreMas[$i]))
  {
    
$genreUrl .= '<a href="?cat='.trim($genreMas[$i]).'" class="ind_genre">'.$genreMas[$i].'</a>';
  }
?>

PS Под новые вопросы лучше заводить новые темы.

  Ответить  
 
 автор: maloi_m3   (12.04.2011 в 14:48)   письмо автору
 
   для: cheops   (12.04.2011 в 14:41)
 

Помогло, огромное спасибо.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования