[SQL] сортировка по количеству
SELECT * FROM tablename ORDER BY value DESC LIMIT 3
смишно
select value from (select count(*) as count, value from abc group by value) a order by a.count desc limit 3;
данке, протестирую
не смишно. то, о чем ты спрашиваешь, лучше обозвать частотой, если хочешь, чтобы собеседник тебя понял правильно
Нужны самые частовстречающиеся что ли? Из исходного вопроса это вообще никак не понять было.
Тогда можно еще так:
При этом в cnt будет квадрат встречаемости, зато операция self join протекает крайне быстро.
Тогда можно еще так:
select a.value aval, count(b.value) cnt from t a join t b using(value) group by b.value order by cnt desc limit 3;
При этом в cnt будет квадрат встречаемости, зато операция self join протекает крайне быстро.
квадрат встречаемостидля двух ксеонов похер, но вообще спасиба, принял во внимание.
Мда, SQL я вообще не знаю

а разве нельзя просто выполнить
без всяких селф join?
select COUNT(id value from transactions group by value order by COUNT(id) desc
без всяких селф join?
Упс. Я дурак.
dense_rank в MSSQL и в Oracle тоже подойдет.
нет, этого у нас пока не держится
select top 3 value ,id from (select value, id from yourtable order by value ) a
upd сори, затупил
а) ты не правильно понял вопрос
б) зачем писать в 2 селекта то, что можно одним? о.О
б) зачем писать в 2 селекта то, что можно одним? о.О
Оставить комментарий
uncle17
есть простейшая таблица[id][value]
как средствами SQL выбрать три максимальных количества value ?