ときに特定の値について統計を取りたくなることがあります。SQLにはMIN, MAX, AVG, SUMなどの集約関数が用意されています。集約関数を使用して、年ごとのチケット販売数の情報を取得します。結果は年でソートされます。
これを行うには、映画ごとのすべてのチケット販売異数を総計し、結果を年で並び替えます。
 - 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
- 汎用SQLコマンドの場合:
 
  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
- SQLの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
 
これらをテストするには、4D SQL Code Samplesデータベースを起動してメインウィンドウを表示させます。クエリモードを選択してUsing Aggregate functionsボタンをクリックします。