sql >> Databasteknik >  >> RDS >> Sqlserver

SQL-fråga för att hämta medelvärdena för 1-dags gap dob's av klienter

En självanslutning kommer att koppla aktuell post med alla poster som har gårdagens datum. I detta sammanhang tillåter group by att många poster med samma datum räknas. t1 måste redovisas separat, så lönen läggs till efteråt, och count(*) ökas för att beräkna genomsnittet.

Här är Sql Fiddle med exempel .

select t1.ClientID, 
       t1.ClinetDOBs,
       (t1.Slaries + sum (t2.Slaries)) / (count (*) + 1) Avg_Slaries
  from table1 t1
 inner join table1 t2
    on t1.ClinetDOBs = dateadd(day, 1, t2.ClinetDOBs)
 group by t1.ClientID, 
       t1.ClinetDOBs,
       t1.Slaries



  1. JPA + StoredProcedureCall + objekttyp IN-parameter

  2. gör den inkrementerade kolumnen b-trädets index på kolumnen obalanserat?

  3. Hur man skapar en användardefinierad postdatatypvariabel i Oracle Database

  4. Prestandafråga:PÅ DUBLIKAT UPPDATERING AV NYCKEL kontra UPPDATERING (MySQL)