Как выбрать среднее значение GROUPED BY для неспецифического ключа в операторе SELECT

Использование Javascript
  • Отключение кнопки html
    document.getElementById("Button").disabled = true;
    
  • Включение кнопки html
    document.getElementById("Button").disabled = false;
    
  • Демонстрация здесь

Использование jQuery

Все версии jQuery до версии 1.6

  • Отключение кнопки html
    $('#Button').attr('disabled','disabled');
    
  • Включение кнопки html
    $('#Button').removeAttr('disabled');
    
  • Демо здесь

Все версии jQuery после 1.6

  • Отключение кнопки html
    $('#Button').prop('disabled', true);
    
  • Включение кнопки html
    $('#Button').prop('disabled', false);
    
  • Демонстрация здесь

PS Обновлен код, основанный на jquery 1.6.1 изменениях . В качестве предложения всегда используйте последние файлы jquery и метод prop().

2
задан GMB 31 March 2019 в 00:28
поделиться

1 ответ

В MySQL 8.0 это так же просто, как использовать оконную функцию AVG(...) OVER(...):

SELECT
   user,
   score,
   score - AVG(score) OVER(PARTITION BY user) AS variance
FROM scores

В более ранних версиях вы можете использовать агрегированный подзапрос для вычисления среднего значения для пользователя, а затем JOIN его с таблица:

SELECT
   s.user,
   s.score,
   s.score - t.avg_score AS variance
FROM scores s
INNER JOIN (
    SELECT user, AVG(score) avg_score FROM scores GROUP BY user
) t ON s.user = t.user
0
ответ дан GMB 31 March 2019 в 00:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: