sql >> Databasteknik >  >> RDS >> Mysql

Vad är SQL-motsvarigheten till pandor 'transform'?

Du kan gå med i en härledd tabell som innehåller det sammanlagda värdet för varje gruppering av b

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

eller med en underfråga

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

frågan är taggad både mysql och psql, så jag är inte säker på vilken db du använder. Men på postgres kan du använda fönsterfunktioner

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



  1. Wordpress Fatalt fel:Oupptäckt fel:Anrop till odefinierad funktion mysql_connect() i /wp-includes/wp-db.php:1570

  2. Lagrad procedur returnerar flera resultatuppsättningar

  3. MySQL SQRT() Funktion – Returnera kvadratroten av ett tal i MySQL

  4. mysql:åtkomst nekad på informationsschema