Сортировка по формуле

dim-dem

Новичок
Сортировка по формуле

Приветствую всех!

Такая задача:
Есть в базе MySQL два поля "summa" и "kol_vo" (поля числовые).
Так вот, нужно сделать сортировку по среднему баллу.
sr_ball=summa/kol_vo

Подскажите, плз., как это можно сделать?
 

SiMM

Новичок
> Средний балл (по формуле) равен сумма, деленная на количество.
Ну и что? + GROUP
 

Gas

может по одной?
dim-dem
всё оно сортирует, разберись со своими данными. Ну а null может быть если field2=0
 

Gas

может по одной?
mysql 4.1.11 & 3.23.58 работает на ура.

версию mysql, типы столбцов, реальный запрос и тестовые данные (2 записи) в студию.
 

dim-dem

Новичок
SELECT *,(summa/kol_vo) as dt FROM zavedenia where kol_vo!=0 ORDER BY dt DESC

Все работает только в том случае, когда в запросе используется "where kol_vo!=0".
А нужно вывести все результаты.

Может в выборке можно подставить условие замены 0 на 1, если "kol_vo=0" ?
 

Gas

может по одной?
[sql]select *, if (kol_vo, summa/kol_vo, NULL) as dt from zavedenia;[/sql]
 

dim-dem

Новичок
Супер запрос, но не сортирует "ORDER BY dt DESC",
подставляет везде NULL
 

Gas

может по одной?
Хм, странно, должно работать.
[sql]
create table temp10
(
summa int,
num int
);
insert into temp10 values(15,5),(15,3),(15,0);

SELECT *, IF (num, summa / num, NULL) AS dt
FROM temp10 ORDER BY dt DESC;
[/sql]

тоже NULL'ы?
какая версия mysql всё таки?
 

dim-dem

Новичок
Gas
Спасибо за помощь, получилось

PHP:
SELECT * , IF (kol_vo, summa/kol_vo, 0) AS dt FROM zavedenia ORDER BY dt DESC
 
Сверху