Las funciones estadísticas permiten efectuar cálculos en una serie de valores. SQL contiene numerosas funciones de agregación MIN, MAX, AVG, SUM, etc. Utilizando las funciones de agregación, queremos obtener información sobre el número de boletos vendidos cada año. El resultado se ordenará por año.
Para hacer esto, debemos efectuar la suma de todos los boletos vendidos para cada película y luego ordenarlos por año.
- Utilizando código SQL:
C_LONGINT($vMin;$vMax;$vSum)
C_REAL($vAverage)
C_TEXT($AlertTxt)
$vMin:=0
$vMax:=0
$vAverage:=0
$vSum:=0
Begin SQL
SELECT MIN(Sold_Tickets),
MAX(Sold_Tickets),
AVG(Sold_Tickets),
SUM(Sold_Tickets)
FROM MOVIES
INTO :$vMin, :$vMax, :$vAverage, :$vSum;
End SQL
- Utilizando comandos SQL genéricos:
C_LONGINT($vMin;$vMax;$vSum)
C_REAL($vAverage)
C_TEXT($tQueryTxt)
C_TEXT($AlertTxt)
$vMin:=0
$vMax:=0
$vAverage:=0
$vSum:=0
SQL LOGIN(SQL_INTERNAL;"";"")
$tQueryTxt:=""
$tQueryTxt:=$tQueryTxt+"SELECT MIN(Sold_Tickets), MAX(Sold_Tickets), AVG(Sold_Tickets), SUM(Sold_Tickets)"
$tQueryTxt:=$tQueryTxt+" FROM MOVIES"
SQL EXECUTE($tQueryTxt;$vMin;$vMax;$vAverage;$vSum)
SQL LOAD RECORD(SQL all records)
SQL LOGOUT
$AlertTxt:=""
- Utilizando el comando EXECUTE IMMEDIATE:
C_LONGINT($vMin;$vMax;$vSum)
C_REAL($vAverage)
C_TEXT($tQueryTxt)
C_TEXT($AlertTxt)
$vMin:=0
$vMax:=0
$vAverage:=0
$vSum:=0
$tQueryTxt:=""
$tQueryTxt:=$tQueryTxt+"SELECT MIN(Sold_Tickets), MAX(Sold_Tickets), AVG(Sold_Tickets), SUM(Sold_Tickets)"
$tQueryTxt:=$tQueryTxt+" FROM MOVIES"
$tQueryTxt:=$tQueryTxt+" INTO :$vMin, :$vMax, :$vAverage, :$vSum;"
Begin SQL
EXECUTE IMMEDIATE :$tQueryTxt;
End SQL
Para probar todos los ejemplos anteriores, lance la base "4D SQL Code Samples" y vaya a la ventana principal. A continuación, puede elegir el modo de búsqueda y presionar el botón Using Aggregate functions.