ACCESS初心者レベルの者ですが、クエリなどについて
教えていただけますでしょうか。
給与計算や社会保険の手続きの仕事をしており、
ACCESS2000で社会保険の随時改定対象者の抽出を
行いたいと思って、テーブルには
(1)毎月給与の各項目(毎月インポート予定)と、
(2)保険料一覧のテーブルを作りました。
また、クエリで改定対象者各人の
(1)3ヶ月平均報酬
をAvg関数で各人の報酬を算出することはできました。
次にこの(1)で算出した3ヶ月平均報酬が
(2)保険料一覧[テーブル]フィールドのどの範囲に該当するかという
クエリを組みたいのですが、どのようなものが考えられるか
教えてください。
例えば、(1)で一番上の215,230円だったら該当するのは
(2)では210,000以上229,999以下の範囲となり、220,000を
抽出してくる。
というものです。
(1)3ヶ月の平均報酬[クエリ]
215,230
234,500
255,000
280,000
(2)保険料一覧[テーブル]
---------------------------------------------------
報酬月額以上 報酬月額以下 標準報酬等級 標準報酬月額
210,000 229,999 18 220,000
230,000 249,999 19 240,000
250,000 269,999 20 260,000
270,000 289,999 21 280,000
290,000 309,999 22 300,000
310,000 329,999 23 320,000
330,000 349,999 24 340,000
---------------------------------------------------
EXCELでやるとすれば、
Vlookup(3ヶ月の平均報酬A2、保険料一覧A2:G4、4、true)
と検索の型をtrueにして近似値を抽出するのと同じ事をACCESSで
行ないたいということです。
なお当方、恥ずかしながら不勉強の為、VBAやSQL文の書き方や
さらにODBCの設定の仕方などもまだ解からないレベルです。
何卒、ご教授の程、宜しくお願いいたします。
No.2ベストアンサー
- 回答日時:
別回答で、関数を使わないクエリ。
レコード数が多い場合は、関数を使うと重くなりますので、
その場合は、こちらの方法を試してみてください。
3ヶ月の平均報酬[クエリ]のフィールド名を「平均報酬」と仮定します。
SELECT [3ヶ月の平均報酬].*, 保険料一覧.*
FROM [3ヶ月の平均報酬] , 保険料一覧
WHERE 保険料一覧.報酬月額以上 <= [3ヶ月の平均報酬].平均報酬
AND [3ヶ月の平均報酬].平均報酬 <= 保険料一覧.報酬月額以下;
-----------------------------------------------------------
基本的にはNo1の回答や、上記のような感じで良いと思いますが、
細かい所で不明な点があります。
・保険料一覧の範囲外のレコードの扱いに関して
・平均報酬の小数点以下の扱いに関して
この仕様によっては、もう少し調整を行う必要があると思います。
-----------------------------------------------------------
例:平均報酬 200,000 ←該当なし
範囲外のレコードをどう扱うのか?
・レコードその物を選択しないのか?
・空欄を表示するのか?
・その他
-----------------------------------------------------------
例:平均報酬 229,999.33333 ←該当なし
等級18にも、19にも該当しません。
切捨てか、四捨五入などのルールがあるのでは?
-----------------------------------------------------------
補足:SQL文からクエリを作る方法
クエリの新規作成、デザインビュー。
テーブルは追加しない。
「表示」→「SQLビュー」。
SQL文をコピー&ペースト。
適当な名前で保存。
とても丁寧なご回答ありがとうございました。
ご指摘の
・保険料一覧の範囲外のレコードの扱いに関して
・平均報酬の小数点以下の扱いに関して
についてですが、保険料一覧は一部を抜粋しました。
報酬月額以上&以下には
下限の0円~上限の99,999,999円までの範囲を設けております。
さすがに報酬が99,999,999円を越える事はないと思いますので(^_^;)
小数点以下はINT関数でまるめております。
3ヶ月平均報酬がマイナスになった場合まではまだ考えていないのですが・・・。
ご教授いただいたSELECT~をSQLビューにコピペしてみたところ、
(テーブル名、フィールド名は修正してます。)
以上、以下それぞれでパラメータを要求されてしまいました。
当方の質問の段階で明記しなかった不備があったのですが
この作成しようとしているクエリを開くと、すでに
3ヶ月平均報酬を参照して各報酬月額の範囲から標準報酬月額が
抽出されているものをイメージしておりました。
ですので、もう少し調べてみたいと思います。
No.4
- 回答日時:
>以上、以下それぞれでパラメータを要求されてしまいました。
恐らくフィールド名に間違いがあります。
認識できないフィールド名は、パラメータと解釈され、
データの入力を要求されます。
テーブル名、フィールド名をもう一度確認して下さい。
正しければ、イメージ通りの結果になるはずです。
解決できない場合は、クエリの内容(SQL文)や、
テーブル構造など、もう少し詳しく補足して下さい。
ご指導まことにありがとうございます。
初めは貴殿が明記して下さったSQL文をコピペし
テーブル名、フィールド名を当方のものへと
修正して実行したところ、
クエリ式に演算子がありませんとのエラーが出ておりました。
そして<=[3ヶ月の平均報酬].平均報酬の部分をペーストして
きたのでこの箇所が間違っている事がわかりましたが、
苦し紛れに、フィールド名に[]をつけたところ成功し、
改めてSQLビューを確認したところ、以下のように記述されておりました。
SELECT [3ヶ月の平均報酬].*, 保険料一覧.標準報酬月額, 保険料一覧.標準報酬等級
FROM 3ヶ月の平均報酬, 保険料一覧
WHERE (((保険料一覧.報酬月額以上)<=[3ヶ月の平均報酬].[平均報酬])
AND (([3ヶ月の平均報酬].平均報酬)<=[保険料一覧].[報酬月額以下]));
()については自動で作成されたものですが、この文で
思い通りの結果が得られました。
ありがとうございました。
No.3
- 回答日時:
>EXCELでやるとすれば、Vlookup
Accessはリレーショナルデータベースですから
仕組みそのものがVlookupの親玉のようなものです
他のテーブル(クエリ)を参照するのに関数など必要ありません
SQLが分からないということなのでデザインビューでできる方法で回答します
>各人の報酬を算出することはできました。
このクエリと
>保険料一覧[テーブル]
このテーブルをクエリデザインビューに取り込みます
結合はしません
平均報酬の抽出条件欄に
between 報酬月額以上 and 報酬月額以下
これで平均報酬に該当する標準報酬等級、標準報酬月額
を引っ張ってこれます
ご回答ありがとうございます。
>>各人の報酬を算出することはできました。
>このクエリと
>>保険料一覧[テーブル]
>このテーブルをクエリデザインビューに取り込みます
>結合はしません
>平均報酬の抽出条件欄に
>between 報酬月額以上 and 報酬月額以下
行なってみたのですが、なぜか何も抽出されませんでした。
もう少しいじってみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 厚生年金 社会保険料改定について詳しい方教えてください。 現在派遣で週4で働いています。 先日社会保険料率改定 1 2022/09/30 18:31
- その他(保険) 標準報酬月額 2 2022/05/11 18:32
- 財務・会計・経理 過年度の課税漏れ給与に対する対応方法 2 2022/05/17 10:14
- 健康保険 社会保険料と労働保険料の報酬に含まれるもの、含まれないものの違いを教えてください。 会社に報奨金が何 1 2023/04/26 00:01
- 健康保険 社会保険の手続き 2 2023/02/12 15:07
- 減税・節税 国民年金追納で社会保険料を減らすことは可能? 社会保険料を払う額は毎年4-6月に行ってると聞きました 5 2022/05/29 17:32
- 会社経営 会社役員ですが雇用保険加入が出来るのですか? 1 2023/06/19 00:54
- その他(悩み相談・人生相談) 雇い主が保険料を支払う労災保険が適用されず、自己負担を強いられている「個人事業主」を動機づける方法。 1 2022/11/06 11:43
- 厚生年金 これは東京の標準報酬月額になります。 https://www.kyoukaikenpo.or.jp/ 4 2023/04/28 12:54
- 健康保険 傷病手当の質問です。 貰える金額は、日単位で、標準報酬日額(過去12ヶ月分の標準報酬月額の平均÷30 1 2023/02/22 20:23
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ACCESSのクエリで注文日に一番近い決済日を選ぶ方法
その他(データベース)
-
アクセスで近似値を求めるには・・・
Access(アクセス)
-
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
-
4
<ACCESS>別テーブルのレコードのテキストデータが中に含まれるレコードを抽出する方法を教えてください
Access(アクセス)
-
5
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
6
「#エラー」の回避
Access(アクセス)
-
7
OR関数
その他(Microsoft Office)
-
8
アクセスのレポート合成(複数のレポートを一つにまとめる方法)
その他(データベース)
-
9
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
10
Accessで文字列の長さによって、フィールドの幅を自動で合わせる方法
Excel(エクセル)
-
11
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
12
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
13
アクセスで入力したデータの順番が変わってしまいます
その他(ビジネス・キャリア)
-
14
アクセスのテキストボックスの初期値を空白に
Access(アクセス)
-
15
ACCESS側からEXCELの書式を設定するには?
Visual Basic(VBA)
-
16
Accessでvlookupみたいなことはできますか。
その他(データベース)
-
17
ACCESS 一番最新の日付の金額を出したいのですが・・
その他(データベース)
-
18
選択クエリで空欄のテーブルがあっても表示したい
Access(アクセス)
-
19
アクセスでcsvに出力した際、頭の0が消えてしまいます
Access(アクセス)
-
20
AccessVBAで作成したExcelファイルを削除する方法は?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リール動画の相場って1本いくら...
-
タイミーって紹介先の味方なん...
-
OKweb で質問したんですが報酬...
-
自分でできる罰、お仕置き 仕事...
-
雇い主が保険料を支払う労災保...
-
教えてgooというサイトって変な...
-
宅建試験のことで質問です。
-
食べても食べても減らないよう...
-
条件のいいレンタルサーバーの...
-
子供に喜んでお手伝いをさせる方法
-
報酬なしの取材、皆さんだった...
-
ライブチャットで働く (現役...
-
AV女優と売春婦の違いって?
-
なぜ、学校で勉強してもなんの...
-
5進数の413を9進数であらわすと...
-
旦那の携帯のヤフーの広告に出...
-
これがスマホの画面に出てきま...
-
勉強のサイトとかを見てるとBL...
-
マッサージをしています。年間...
-
Googleやgoo等の検索サイトって?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
OKweb で質問したんですが報酬...
-
SNSでの収入
-
公務員 お祭りのお手伝い
-
AV女優と売春婦の違いって?
-
宅建試験のことで質問です。
-
自分でできる罰、お仕置き 仕事...
-
リール動画の相場って1本いくら...
-
街頭インタヴューされた一般人
-
ACCESSで近似値を求める方法を...
-
民生委員の報酬について
-
DMMのアフィでダイレクト報酬が...
-
20代前半です。 友人にアフィリ...
-
なぜ、学校で勉強してもなんの...
-
キャバクラ店におけるホステス...
-
営利目的NGの公民館を、業務(...
-
ASP業者の強引な契約解除
-
宅建の勉強をしております。 平...
-
監査役の報酬について
-
アコム(消費者金融)が参加し...
-
解雇時の報酬没収について
おすすめ情報