1

私は、ユーザー指定の数式をパラメーターとして取り、その数式のテーブルを使用して計算を行うストアド プロシージャを作成する任務を負っています。

適性検査の結果です。テストはセクションに分割され、各セクションには変数が割り当てられます。E1E2

現在、各セクションはスコア付きの質問で構成されています。例えば。が質問番号を示しているE1 = [1]+[2]-[3]+[4]+[5]+[6]場合。[number]

ここで、ユーザーは上記のような式を指定します[1]+[2]-[3]+[4]+[5]+[6]。質問番号をその質問のスコアに置き換えるパーサーを作成する必要があります。ただし、あるセクションが別のセクションのスコアを参照できるため、問題があります。E2 = [7]+[8]+([6]-E1)+[9].

そのため、文字列を解析し、[Number] をスコアに置き換え、可変数にヒットした場合は、続行する前にまずセクション スコアを計算するパーサーを作成する必要があります。

再帰関数のようなものになると想像できますが、正しい方向に向けて誰か助けてもらえますか?

敬具。

4

2 に答える 2

1

mssql を使用している場合は、次のような動的 SQLも利用できます。exec('select 2*2')

于 2012-12-09T17:47:11.307 に答える
1

できないと言っているわけではありませんが、SQL はこの種の操作に最適な環境ではありません。同様に、スイカを使って壁に釘を打つこともできます。特定のプラットフォームを指定しません。Microsoft SQL の場合は、おそらく SQL CLR プロシージャを使用すると、必要な操作が簡単になります。

于 2012-07-17T07:51:30.217 に答える