2017-06-22 2 views
0

私はAccessの初心者です。簡単な答えがあれば、私の謝罪を受け入れてください。テーブル内の行と列の交点を見つけてそのデータを別のテーブルに入れる方法

私は自分のオフィスのデータベースで作業しています。毎年GSxステップxの給与を示す給与テーブルが出されます。私は各年の初めに各従業員の給料情報を更新する方法を理解しようとしています。

従業員表には、各従業員のステップと年俸が表示されるフィールドを示すグレードとフィールドを示すフィールドもあります。

給与テーブルを見て、行と列の交差点を見つけて給与を引き上げるアクセスを教えて、毎年従業員の記録を更新する方法はありますか?従業員のテーブル?

または、言い換えれば、ステップ8の列でGS 9行の交差を見つけることができますか?その後、その特定の給与を取って従業員の記録に貼り付けますか?それは、人がそれを行うことを悪用するソフトウェアを取得するために多くの時間と労力を節約するだろう。

再び。申し訳ありませんが、これは答えるのが簡単な質問です...私は今、壁に頭を打っています。

答えて

0

あなたの質問に答える前に、より良い質問は、あなたがなぜDBMS全体にデータを複製しているのでしょうか?

SALARIES

SALARY_ID | SALARY_GRADE | SALARY_STEP | SALARY_AMOUNT 

従業員

EMPLOYEE_ID | GRADE | STEP | SALARY 

Database normalization rulesあなたは可能な限り冗長性を削減しようとする必要があります状態:あなたはそれのような音を作るものから、2つのテーブルがありますあなたの関係/テーブル構造で。また、計算されたフィールドをできる限り保存しないようにして、プリミティブを保持するだけです。

したがって、私は従業員からのテーブルを給与フィールドを削除し、次のようにそれを再構築します:

EMPLOYEE_ID | GRADE | STEP 

従業員をそして、あなたはSALARY_AMOUNT値を必要とするとき、単にJOIN従業員オングレードおよびステップEMPLOYEESテーブルで必要な追加データは、すべてEMPLOYEEには適用されない追加の給与額(ボーナス、レイズなど)がある場合のみです。

+0

guess Tonyは、ピボット解除テーブルに関する詳細を追加する必要があります。 Sarahは給与段階を列として、gradを行として持つように見えますが、その量は交差点にあります。 https://stackoverflow.com/questions/7255423/how-to-simulate-unpivot-in-access-2010 – y4cine

+0

申し訳ありませんが、コード/フォーマットされたテキストなしでは視覚化が困難でした。私の鋭い同僚が言及したようにピボットを外すことができない場合は、従業員のステップを動的に読み取って選択クエリのフィールド名として使用できるように、ビルトインアプリケーションに頼る必要があります。 –

関連する問題