sql >> Database teknologi >  >> RDS >> Mysql

Hvad svarer SQL til pandas 'transform'?

Du kan slutte dig til en afledt tabel, der indeholder den samlede værdi for hver gruppering af b

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

eller ved at bruge en underforespørgsel

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

spørgsmålet er tagget både mysql og psql, så jeg er ikke sikker på, hvilken db du bruger. Men på postgres kan du bruge vinduesfunktioner

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



  1. mysql-connector vil ikke importere til script i pycharm

  2. Mysql Datediff-forespørgsel

  3. Forbinder Ms Access Db til Mysql via Vba

  4. Hvordan kan jeg rydde en transaktions-deadlock?