Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como usar aliases em operadores matemáticos no SQL?


Infelizmente, você não pode usar aliases de coluna dessa maneira. Eles só estão disponíveis depois o SELECT declaração é processada. No entanto, você pode fazer isso em uma subconsulta ou em uma expressão de tabela comum (CTE). Aqui está a subconsulta simples:
SELECT player_name,
       total_games,
       total_points,
       (total_points / total_games) AS average_points
FROM
 (SELECT
 users.username AS player_name,
 COUNT(*) AS total_games,
 SUM(games.points) AS total_points,

 FROM games,
 INNER JOIN users
 ON games.player_id = users.id
 GROUP BY games.player_id) as InnerQuery