4D v16

WHERE句の使用

ホーム

 
4D v16
WHERE句の使用

WHERE句の使用  


 

 

ビデオライブラリから、1960年以降に公開された映画の数を調べる方法を見てみましょう。
4Dのコードは以下のようになります:

 C_LONGINT($NoMovies)
 
 $NoMovies:=0
 REDUCE SELECTION([MOVIES];0)
 QUERY([MOVIES];[MOVIES]Year_of_Movie>=1960)
 $NoMovies:=Records in selection([MOVIES])
 ALERT("The Video Library contains "+String($NoMovies)+" movies more recent or equal to 1960")

  • SQLコードでは、同じクエリが以下のようになります:

     C_LONGINT($NoMovies)
     
     $NoMovies:=0
     REDUCE SELECTION([MOVIES];0)
     Begin SQL
        SELECT COUNT(*)
        FROM MOVIES
        WHERE Year_of_Movie >= 1960
        INTO :$NoMovies;
     End SQL
     ALERT("The Video Library contains "+String($NoMovies)+" movies more recent or equal to 1960")

  • 汎用SQLコマンドを使用した場合、上のクエリは以下のようになります:

     C_LONGINT($NoMovies)
     $NoMovies:=0
     REDUCE SELECTION([MOVIES];0)
     
     SQL LOGIN(SQL_INTERNAL;"";"")
     SQL EXECUTE("SELECT COUNT(*) FROM MOVIES WHERE Year_of_Movie >= 1960";$NoMovies)
     SQL LOAD RECORD(SQL all records)
     SQL LOGOUT
     ALERT("The Video Library contains "+String($NoMovies)+" movies more recent or equal to 1960")

  • QUERY BY SQL コマンドを使用した場合、上のクエリは以下のようになります:

     C_LONGINT($NoMovies)
     
     $NoMovies:=0
     REDUCE SELECTION([MOVIES];0)
     QUERY BY SQL([MOVIES];"Year_of_Movie >= 1960")
     $NoMovies:=Records in selection([MOVIES])
     ALERT("The Video Library contains "+String($NoMovies)+" movies more recent or equal to 1960")

  • SQLの EXECUTE IMMEDIATE コマンドを使用した場合、上のクエリは以下のようになります:

     C_LONGINT($NoMovies)
     C_TEXT($tQueryTxt)
     
     $NoMovies:=0
     REDUCE SELECTION([MOVIES];0)
     $tQueryTxt:="SELECT COUNT(*) FROM MOVIES WHERE Year_of_Movie >= 1960 INTO :$NoMovies;"
     Begin SQL
        EXECUTE IMMEDIATE :$tQueryTxt;
     End SQL
     ALERT("The Video Libraontains "+String($NoMovies)+" movies more recent or equal to 1960")

前節のとおり、この例題をテストするには4D SQL Code Samplesデータベースを起動し、メインウィンドウを開きます。クエリモードを選択してWHERE clauseボタンをクリックします。

 
プロパティ 

プロダクト: 4D
テーマ: チュートリアル

 
履歴 

 
ARTICLE USAGE

SQLリファレンス ( 4D v16)