スポンサーリンク

2015年2月27日金曜日

更新クエリで指定した検索条件に一致したデータを一気に書き換える

Access2013の更新クエリで、指定した検索条件に一致したデータを一気に書き換える方法です。

更新クエリの元になる商品マスターテーブルです。

この倉庫名フィールドの「第二倉庫」を「第2倉庫」に全レコード変更します。
「第二倉庫」を「第2倉庫」に全レコード変更します

クエリデザインを開きます。

リボンの[クエリツール]-[デザイン]-クエリの種類グループの[更新]をクリックします。
クエリの種類グループの[更新]をクリックします

クエリの「表示」の行が「レコードの更新」に変わりました。
「表示」の行が「レコードの更新」に変わりました

倉庫名フィールドを追加します。

レコードの更新に変更後の「"第2倉庫"」を入力します。

抽出条件を設定しないと、全レコードが「第2倉庫」になってしまうので、抽出条件に「"第二倉庫"」と入力します。
抽出条件に「"第二倉庫"」と入力します

これで更新クエリは作成完了です。

リボンの[実行]をクリックします。
リボンの[実行]をクリックします

「○件のレコードが更新されます。・・・」とメッセージが表示されるので、問題なければ[はい]をクリックします。 
問題なければ[はい]をクリックします

商品マスターテーブルを開いて確認します。

「第二倉庫」の倉庫名が全て「第2倉庫」に書き換えられました。
「第二倉庫」の倉庫名が全て「第2倉庫」に書き換えられました

2015年2月24日火曜日

上位トップ5を表示させる

Access2013のクエリで、上位トップ5を表示させる方法です。

下の商品販売テーブルの販売金額のトップ5を表示させます。
商品販売テーブルの販売金額のトップ5を表示

クエリデザインで販売金額フィールドを配置します。

次に並べ替えを[降順]に設定します。
並べ替えを[降順]に設定

これで実行すると販売金額の高いレコード順に表示されます。
販売金額の高いレコード順に表示

リボンの[クエリ ツール]-[デザイン]-クエリ設定グループの[トップ値]を設定します。

トップ値のヒントです「クエリの結果のうち、上位の一定件数または一定割合だけを表示します。」
クエリ設定グループの[トップ値]を設定

トップ値を「5」に設定します。
トップ値を「5」に設定

実行結果です。

販売金額の高いトップ5を表示させることができました。
販売金額の高いトップ5を表示

2015年2月21日土曜日

重複クエリを作成し、重複しているレコードを抽出する

Access2013で重複クエリを作成し、重複しているレコードを抽出する方法です。

重複クエリの作成元の商品マスターテーブルです。

この倉庫名フィールドから倉庫名が2つ以上入力されている、重複レコードを抽出します。
倉庫名が2つ以上入力されている、重複レコードを抽出
リボンの[作成]-[クエリウィザード]をクリックします。
[クエリウィザード]をクリック
新しいクエリで重複クエリウィザードを選択します。

重複クエリウィザードのヒントです「このウィザードで、1つのテーブルまたはクエリ内の重複したフィールドの値を抽出するクエリを作成します。」
重複クエリウィザードを選択
重複クエリウィザードが始まります。

重複データを調べるテーブルまたはクエリを選択してください。

たとえば、複数の得意先がある都道府県を探す場合は、[得意先]テーブルを選択します。

ここで、元になるテーブル 商品マスターを選択します。
商品マスターを選択
重複データを調べるフィールドを選択してください。

たとえば、複数の得意先がある都道府県を探す場合は、[得意先]テーブルの[都道府県]フィールドを選択します。

ここでは、抽出するフィールドの倉庫名を選択します。
抽出するフィールドの倉庫名を選択
クエリの結果に表示するその他のフィールドを選択してください。

たとえば、[都道府県]フィールドで重複する値を探す場合、[得意先]フィールドと[住所]フィールドを共に表示できます。

ここでは全てのフィールドを選択し表示させます。
全てのフィールドを選択し表示
クエリ名を指定してください。

クエリ名を入力します。

これで重複クエリウィザードは完了です。
重複クエリウィザードは完了
実行画面です。

重複する倉庫名のレコードのみが表示されています。
重複する倉庫名のレコードのみが表示

2015年2月16日月曜日

指定条件以外のレコードを抽出する

Access2013で、指定した条件以外のレコードを抽出する方法です。

条件指定する元のテーブルです。
これの倉庫名フィールドから「第二倉庫」以外のレコードを抽出します。
倉庫名フィールドから「第二倉庫」以外のレコードを抽出
クエリデザイン画面です。
倉庫名の抽出条件に、Not "第二倉庫" と入力します。
これで第二倉庫以外という意味です。
倉庫名の抽出条件に、Not "第二倉庫" と入力
実行すると第二倉庫以外の倉庫名のレコードが抽出できました。
第二倉庫以外の倉庫名のレコードが抽出
Not "第二倉庫" の代わりに <> "第二倉庫" のように Not の代わりに <> を使うこともできます。
Not の代わりに <> を使う

2015年2月15日日曜日

Betweenを使い、日付の期間で抽出する

Access2013で、Betweenを使い日付の期間で抽出する方法です。

抽出元のテーブルです。
この販売日フィールドから期間を指定し抽出します。
販売日フィールドから期間を指定し抽出
クエリデザインの抽出条件に、 Between 2014/05/04 and 2014/05/05 と入力します。
2014/05/04から2014/05/05の期間を抽出するという意味です。
クエリデザインの抽出条件
改行すると日付に自動的に#が付き、 Between #2014/05/04# And #2014/05/05# になります。
このように日付を指定する場合、両側に#を付ける必要があります。
日付を指定する場合、両側に#を付ける必要があります
指定した販売日の期間で抽出することができました。
指定した販売日の期間で抽出

2015年2月14日土曜日

Betweenを使い、以上以下の範囲で抽出する

Access2013で、Betweenを使い、○○以上○○以下の範囲で抽出します。

Betweenを使うクエリの元になる商品販売日付明細テーブルです。
クエリの元になる商品販売日付明細テーブル
販売金額から5000円以上10000円以下のレコードを抽出します。
クエリのデザインビューの抽出条件に、 Between 5000 And 10000 と入力します。
このようにBetweenは以上以下をANDで指定します。
Betweenは以上以下をANDで指定
実行結果です。
販売金額が5000円以上10000円以下のレコードを抽出することができました。
販売金額が5000円以上10000円以下のレコードを抽出

2015年2月13日金曜日

ワイルドカードの?を使ってあいまい抽出を行う

Access2013で、ワイルドカードの?を使ってあいまい抽出を行います。
ワイルドカードの「*」(半角アスタリスク)は複数の文字列w検索できましたが、「?」(半角クエスチョンマーク)は任意の1文字を検索できます。

クエリの元になる商品マスターテーブルです。
 クエリの元になる商品マスターテーブル
商品コードフィールドで「?」を使って抽出します。
"?5"と入力します。
商品コードフィールドで「?」を使って抽出
別のセルに移動すると自動的に下記になります。
Like "?5"
別のセルに移動
実行すると、先頭が1文字で次の文字が「5」のレコードが抽出できました。
先頭が1文字で次の文字が「5」のレコードが抽出
次に倉庫名が"第?倉庫"で抽出します。
倉庫名が"第?倉庫"で抽出
第○倉庫のレコードが抽出できました。
第○倉庫のレコードが抽出
次に ワイルドカードの「*」と同じ使い方をしてみます。
Like "第?" 
ワイルドカードの「*」と同じ使い方をしてみます
ワイルドカード「*」では抽出できましたが、"第"に続く1文字の倉庫はないので、レコードは見つかりませんでした。
レコードは見つかりませんでした

2015年2月12日木曜日

ワイルドカードを使ってあいまい抽出を行う

Access2013で、ワイルドカードを使ってあいまい抽出を行ってみます。
今回は 「*」(半角アスタリスク)を使います。
 「*」(半角アスタリスク)を使うと、任意の0文字以上の文字列を検索できます。

クエリの元になる商品マスターテーブルです。
クエリの元になる商品マスターテーブル
クエリのデザインビューであいまい抽出を行います。
商品名フィールドの抽出条件に[デジタル*」と入力します。
クエリのデザインビューであいまい抽出
すると自動的に「Like "デジタル*"」に変わります。
自動的に「Like "デジタル*"」に変わります
実行すると商品名の先頭に「デジタル」が付くレコード全てが抽出されました。
商品名の先頭に「デジタル」が付くレコード全てが抽出
今度は倉庫名フィールドで「*三倉庫」と入力します。
倉庫名フィールドで「*三倉庫」と入力
実行すると倉庫名の末尾に「三倉庫」が付くレコード全てが抽出されました。
末尾に「三倉庫」が付くレコード全てが抽出
今度は商品名フィールドで「*ス*」と入力します。
商品名フィールドで「*ス*」と入力
実行すると商品名のどこかに「ス」が付くレコード全てが抽出されました。
以上のように「*」を使うことで簡単にあいまい抽出ができます。このワイルドカードはウィンドウズのファイル検索など、他のアプリケーションでもよく用いることができるので覚えておくと役に立ちます。

クエリでANDとOR条件を同時に使い抽出する

Access2013のクエリで、ANDとOR条件を同時に使い抽出する方法です。

クエリの元になる商品販売日付明細テーブルです。
商品販売日付明細テーブル
クエリデザイン画面で、最初に商品IDが3以上の条件を設定します。
商品IDが3以上の条件を設定
商品IDが3以上のレコードが抽出できました。
商品IDが3以上のレコードが抽出
次に販売日が2014/05/05以降のAND条件を設定します。
販売日が2014/05/05以降のAND条件を設定
商品IDが3以上で販売日が2014/05/05以降のAND条件で抽出した結果です。
販売日が2014/05/05以降のAND条件で抽出した結果
次に、販売金額が30000円以上のOR条件を追加します。
これは「または」の行に条件を入力します。
販売金額が30000円以上のOR条件を追加
商品IDが3以上で販売日が2014/05/05以降のAND条件と、販売金額が30000円以上のOR条件を追加した結果です。
AND条件とOR条件を追加した結果