sql >> Databáze >  >> RDS >> Mysql

Jaký je SQL ekvivalent k „transformaci“ pandy?

Můžete se připojit k odvozené tabulce, která obsahuje agregovanou hodnotu pro každé seskupení b

select * from mytable t1
join (
    select avg(a), b
    from mytable
    group by b
) t2 on t2.b = t1.b

nebo pomocí poddotazu

select *, (select avg(a) from mytable t2 where t2.b = t1.b)
from mytable t1

otázka je označena jako mysql i psql, takže si nejsem jistý, kterou db používáte. Ale na postgresu můžete použít funkce okna

select *, avg(a) over (partition by b) 
from mytable



  1. Jak se mohu připojit k MySQL na serveru WAMP?

  2. Vytvořte cizí klíč v SQLite

  3. Dotazy Java proti PPGool II způsobují chyby v nepojmenovaném připraveném příkazu neexistuje

  4. Oracle Insert Vyberte s objednávkou podle