0

フォームの読み込み時にいくつかのSQLを実行するフォームと、フォーム上の3つのソートボタンがあり、すべて独自のプライベート関数でSQLを繰り返します。唯一の違いはソート順です。where句を更新する必要がある場合、4回更新する必要があります。次のようなパラメータ化された関数を作成したいと思います

function getFormRecs(arg){
    sql...
    . 
    .
    .
    order by 'arg'
{

ここで、arg はフォーム コントロールまたはイベントから渡された引数です。

次に、フォームの読み込みとフォームの 3 つの並べ替えボタンで getFormRecs() 関数を呼び出し、arg を次のように渡します。

getFormRecs('formload')
getformRecs('sorta')
getformRecs('sortb')
getformRecs('sortc')

渡された引数に基づいて、関数の先頭に正しい並べ替えフィールドを定義します。

最終結果は、ほぼ同一の長い曲がりくねった sql を含む関数またはサブルーチンを再利用するだけです。

4

2 に答える 2

2

なぜ関数が必要なのかわかりません。を含まない基本クエリから始めることができますORDER BY

SELECT id, fld2, fld3
FROM YourTable;

SELECT次に、必要な特定のものを追加する新しいステートメントにデータ ソースとして含めることにより、その同じクエリを別の場所で再利用しますORDER BY

SELECT q.id, q.fld2, q.fld3
FROM qryBase AS q
ORDER BY q.fld3;
于 2013-10-03T20:16:58.217 に答える