Mysql
 sql >> база данни >  >> RDS >> Mysql

как да изведете таблица за класирането в движение от таблица с футболни [футболни] резултати на mysql?

Първо обединете таблицата с резултати, като размените домакинския отбор с отбора като гост и размените броя на головете. Това ви дава някои изходни данни, които лесно се обобщават и заявката за генериране на карта с резултати е нещо подобно:

select 
    team, 
    count(*) played, 
    count(case when goalsfor > goalsagainst then 1 end) wins, 
    count(case when goalsagainst> goalsfor then 1 end) lost, 
    count(case when goalsfor = goalsagainst then 1 end) draws, 
    sum(goalsfor) goalsfor, 
    sum(goalsagainst) goalsagainst, 
    sum(goalsfor) - sum(goalsagainst) goal_diff,
    sum(
          case when goalsfor > goalsagainst then 3 else 0 end 
        + case when goalsfor = goalsagainst then 1 else 0 end
    ) score 
from (
    select hometeam team, goalsfor, goalsagainst from scores 
  union all
    select awayteam, goalsagainst, goalsfor from scores
) a 
group by team
order by score desc, goal_diff desc;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да получа достъп до инструмента на командния ред mysql, когато използвам XAMPP в OS X?

  2. Свързване на изходния код на PHP и изпращане на формуляр към MySQL база данни

  3. Разширена MySql заявка:Актуализирайте таблицата с информация от друга таблица

  4. ReplicationManager хвърли изключение при отваряне на връзка

  5. Две таблици с еднакви колони или една таблица с допълнителна колона?