sql >> Database >  >> RDS >> Mysql

Intelligente MySQL GROUP BY voor activiteitenstromen

Enkele opmerkingen over uw gewenste resultaten:

Sommige items zijn geaggregeerd (Jack Sprat heeft zeven verkopers gehonoreerd) en andere zijn gespecificeerd (Lord Nelson heeft de Golden Hind gecharterd). U moet waarschijnlijk een UNION in uw zoekopdracht hebben die deze twee klassen items samenbrengt uit twee afzonderlijke subquery's.

U gebruikt een vrij grove tijdstempel-nabijheidsfunctie om uw items te groeperen ... DATE() . Misschien wil je een meer verfijnd en aanpasbaar schema gebruiken... zoals dit, misschien

  GROUP BY TIMESTAMPDIFF(HOUR,CURRENT_TIME(),stream_date) DIV hourchunk

Hiermee kun je dingen groeperen op leeftijdsblokken. Als u bijvoorbeeld 48 gebruikt voor hourchunk je groepeert dingen die 0-48 uur geleden zijn samen. Als u verkeer en actie aan uw systeem toevoegt, wilt u misschien de hourchunk . verkleinen waarde.



  1. Hoe een vierkant in SQL Server te berekenen

  2. TNSPING OK maar sqlplus geeft ORA-12154?

  3. Controleer of de reeks bestaat in Postgres (plpgsql)

  4. hoe gegevens uit de logtabel naar de e-mailtekst in oracle te exporteren