2016-07-01 23 views
0

は、私がIIf([Student_id] Like 'I*','IA'手段とどのようなこれらの3 (IIf([Student_id] Like 'I*','IA',IIf([Student_id] Like 'D*','IA',[Student_id]))) Like 'R*'を何疑問に思ってLike 'R*としています。最後にORの状態。式IIfとOR Accessクエリに

答えて

2

IIf関数はあるか/他の場所:

  • 最初のパラメータは評価する式である
  • 2番目のパラメータは、式の結果が真である場合に返される値です
  • 第三のパラメータは、返される値は、式の結果が偽である

IIf (expr , truepart , falsepart)

truepartまたはfalsepartも式にすることができるので、IIfへの呼び出しをネストすることができます。これは潜在的には強力ですが、読み込みには苦労する可能性があります。

我々は構造を示すために、最初のビットとインデントで始まるのであれば:

((( IIf([Student_id] Like 'I*', 'IA', IIf([Student_id] Like 'D*', 'IA', [Student_id]))) Like 'R*'

Student_idsがIで始まるのであれば、その残りは、結果は結果があれば、学生の評価である他のIAですidsはDで始まり、結果はIAです。そうでない場合は結果が学生IDです。

の発現を評価したが、結果は、R

同じで始まるが、得られたIDがN

同じ

しかし、得られたIDが

「」であるかどうかを確認するために比較始まるかどうかを確認するために比較することはありません

したがって、厄介なネストされたIIf呼び出しは、IまたはDで始まる学生IDを除外するためのフィルタです。

基本的にそれは混乱です。

+0

'厄介なネストされたIIf呼び出しは、IまたはD'で始まる学生IDを除外するフィルタです。私はこの行を理解しましたが、「Student_idsが私とIAで始まるならば」とまだ混同しています。これを説明してください。 – Lara