Windows NTでAccess2000を使っています。(ACCESSは初心者です)
あるテーブルに入っている伝票番号をクエリでひっぱってみたのですが
テーブルにはある番号ががクエリでは出てこないものがあります。
昇順に並び替えているぐらいで特に抽出条件を設けているわけでもないのに
何がおかしいのでしょうか??
教えてください。よろしくお願いします。

A 回答 (3件)

ふたたび。



伝票番号のテーブルをAとして、Aを基準にテーブルB/テーブルCがそれぞれ何らかの形でリンクされているとします。
まず、その状態で伝票を「探す処理」を追っかけて見ます。

0.入力により、伝票番号を指定

1.Aの伝票番号=入力された番号
2.A-Bのリンクされているテーブル同士で、等しいもの
3.A-Cのリンクされているテーブル同士で、等しいもの

という処理が行われています。
2・3の処理が行われるのは、リンクが行われている為です。
2・3どちらか、片方でも成立しない場合、表示対象外になります。

【対応】
一時的に「リンク」をなくすことで、2・3の処理を回避できます。
    • good
    • 0

テーブル同士が内部結合されている場合、両方のテーブルにデータが有るものだけが表示されます。


主体となるテーブルのすべてのデータを表示する(他のテーブルにはデータが無い場合でも)には、他のテーブルとの結合を外部結合にしてください。

具体的には、
クエリーのデザインビューで、テーブルをつないでいる線をダブルクリックして、結合プロパティを開いてください。
「‘「主体となるテーブルのテーブル名」の全レコードと’・・・」にチェックをつけてください。

ヘルプで「結合の種類」について、ご確認ください。

いま、私の手元にあるのは Access97 ですので、もしかしたら操作方法が多少違うかもしれませんが・・・。
    • good
    • 2

こんにちは。



そのクエリですが、単独のテーブルだけで、伝票番号だけ条件に値を入力している-という事でしょうか。

クエリ画面で、上のほうにテーブルが四角く表示され、他のテーブルと関連させたりする画面がついていると思うのですが。ここに複数のテーブルが表示されている状態だと、もう片方のテーブルに”ない場合”に表示されない事がありますがどうでしょう?

でわ

この回答への補足

すみません。説明不足でしたね。
テーブルは3つあります。
主体となるテーブルのほかにデータをリンクさせているテーブルが2つ。
こういった場合に主体のテーブルに書き込まれている伝票番号を
すべて表示させるということは不可能なのでしょうか…という質問です。
(ちなみにリンクテーブルのほうには伝票番号は含まれていません)

補足日時:2002/03/12 16:58
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QphpMyAdminでのフィールド削除(クエリ実行)

本当にMySQL初心者なので基本的にコマンドが理解できないのですが、phpMyAdminにてデータベースを管理していますが、一つのテーブルに数千のデータが入っており、例えばID番号1から500までを一気に削除したいと言うときに、最初はローカルにCSVデータをエキスポートして編集した後インポートさせようとしたのですが、文字コードの関係でエラーになってしまい、解決策はクエリでデータを削除するしかないとの結論になりました。
例えばテーブルを指定してからクエリのウィンドウを開くとSELECT * FROM `テーブル名` WHERE 1
とすでに入力されているのですが、これをどのように書き換えれば複数のフィールドをいっぺんに削除できるのでしょうか?
非常に困ってます、アドバイスよろしくお願いします

Aベストアンサー

普通にクエリを書いて実行してください

DELETE FROM `テーブル名` WHERE `ID` BETWEEN 1 AND 500;

QAccessクエリで昇順で昇順に並びかえる

お世話になります
Accessクエリで昇順にしたのですがID順にそろえたいのですが
■現状
例下記
ID|配達場所|
6|大阪  |
4|大阪  |
7|大阪  |
3|大阪  |
5|京都  |
2|京都  |
1|京都  |
現在上記のような感じになり大阪と京都は区別出来たのですが、
クエリ内ではただ昇順を選んでるだけです(配達場所)

■わからないこと
ID番号も昇順にしたい。
ID|配達場所|
3|大阪  |
4|大阪  |
6|大阪  |
7|大阪  |
1|京都  |
2|京都  |
5|京都  |
なんだか昇順の昇順でややこしいですがわかる方ご教授願います

Aベストアンサー

#1です
クエリのデザインで表示されているのかな

左から順に
ID 表示にチェック
配達場所  表示にチェック 検索条件 並べ替え:昇順
ID 表示にチェックなし 並べ替え:昇順

わかりにくいかな

Qアクセスの削除クエリでいいのでしょうか?

 データベースで検索できるようにしたいのですが・・・・。クエリの検索結果をフォームに反映させています。
 検索結果表示後、もう一度検索フォームに戻り、検索をかけたときヒットするデータがないにも関わらず前回の検索結果が表示されたままになってしまいます。
削除クエリを使用すればいいのでしょうか?
 また削除クエリをどのように設定したらいいのでしょうか?(たとえば抽出条件が必要なのでしょうか?)
 この場合、マクロはいったん削除クエリを開き、もう一度クエリを開く設定でいいのでしょうか?分かりにくい質問ですいませんが教えてください

Aベストアンサー

はい、フォームのもとになっているクエリのデータが変わっても、更新行為をしないと反映されません。
具体的には、更新したいフォームに、コマンドボタンウイザードでフォーム→再表示を選択し、「再表示」ボタンを作ってみてください。押すとほら、更新されました。ボタン押し下げ動作を省略したい場合は、たとえば検索画面に戻るボタンがあるとしたら、そのボタンのクリック時イベントに、再表示ボタン内の主要ソースを貼り付ければ用を成すはずです。
但し、サブフォームをご利用の場合など、この方法がふさわしくない場合もあります。
確実に更新するには該当のフォームを閉じて開きなおすことです。マクロを作ってボタン化すれば少々画面がちらつくだけでそう不自然ではありません。
お試し下さい。

QACCESSのテーブルで、昇順並び替え後、連番フィールドを作成したい

表題の通りなのですが、
今現在ACCESS2000を使ってデータベースを作成しています。
その際、
----------------------
連番  項目
00001  りんご
00002  ばなな
00003  みかん
00004  もも
----------------------
というようなテーブルで[項目]を昇順で並び替え後、
連番が自動的に振られるようなクエリ(無理そうならその他の方法でも)を作成したいと思っています。

今現在はクエリで以下のように昇順で並び替えられたものを、
----------------------
連番  項目
00002  ばなな
00003  みかん
00004  もも
00001  りんご
----------------------
一旦エクセルにエクスポートして、オートフィルで[連番]を書き換え後、再度ACCESSにインポートし以下のような完成形にもっていっています。
----------------------
連番  項目
00001  ばなな
00002  みかん
00003  もも
00004  りんご
----------------------

しかし、頻繁に[項目]書き換え・追加のあるデータベースなので、結構な時間を費やしてしまい、とても効率が良いとはいえない状態です。

どうにかACCESS内で完結できる方法はないものでしょうか?

ご享受の程よろしくお願いいたします。

表題の通りなのですが、
今現在ACCESS2000を使ってデータベースを作成しています。
その際、
----------------------
連番  項目
00001  りんご
00002  ばなな
00003  みかん
00004  もも
----------------------
というようなテーブルで[項目]を昇順で並び替え後、
連番が自動的に振られるようなクエリ(無理そうならその他の方法でも)を作成したいと思っています。

今現在はクエリで以下のように昇順で並び替えられたものを、
----------------------
連番  項目
00002  ばなな
...続きを読む

Aベストアンサー

連番は他のテーブルと関連付けられていないのですよね。
今一つ、連番の使い道がわからないのですが・・・

連番は数値型で、書式が 00000 になっているものと仮定します。
テーブル名が「Table_A」と仮定します。
また、項目に重複するものがないものとします。

クエリのSQLビューで以下を記述してみてください。

UPDATE Table_A SET 連番 = DCount("項目","Table_A","項目<='" & 項目 & "'");

そして、必要に応じてこの更新クエリを実行します。


連番がテキスト型なら、DCount 部分を Format を使って桁を揃えてみてください。

Qテーブル削除クエリ

テーブル作成クエリはあるけどテーブル削除クエリはないのでしょうか?
ADOXで削除するしかないですか?

Aベストアンサー

クエリーのSQLビューで、下記の様なSQLを入力して保存すると、一種のテーブル削除クエリができますね。
DROP TABLE Table1;
データベースウィンドウで右クリックする方が早そうな...
VBAからなら、下記で実行できました。ご参考まで。
Sub Sample()
DoCmd.SetWarnings False
DoCmd.OpenQuery "Q_Table1削除"
DoCmd.SetWarnings True
End Sub

Qaccess2007でテーブルを他のaccess2007のテーブルにエキスポートしたい

windows7のAccess2007でテーブルを他のAccess2007のテーブルにエキス
ポートしたい。これは、マクロで出来るのでしょうか。

マクロでやるとすれば、アクションは何を選べば良いのでしょうか。宜
しく回答願います。

Aベストアンサー

「データベース変換」で。

「全てのアクションを表示」をオンにしておくことをお忘れなく。

TransferDatabase マクロ アクション
https://support.office.com/ja-jp/article/TransferDatabase-%E3%83%9E%E3%82%AF%E3%83%AD-%E3%82%A2%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3-f098d760-733b-45ed-b1bf-b4e2eff996ee

QAccessの削除クエリについて

『先月分のデータを全て削除』という削除クエリを作りたいのです。
本を見ても、
『指定した日の○日前の分までのデータを削除する』はあるのですが・・・・。

例えば、
5月5日にクエリを実行しても、5月10日にクエリを実行しても、4月30日以前のデータが削除されて欲しいのですが。
よろしくお願いいたします。

Aベストアンサー

>『先月分のデータを全て削除』
ということであれば下記条件で削除クエリを作成
すればできます。
---
フィールド:式:Month([対象日付フィールド])
抽出条件:Month(DateAdd("m",-1,Now()))

QAccess2000のテーブル作成クエリについて

テーブル作成クエリを使用し、作成された新しいテーブルを見ると、Yes/No型のフィールドのレコードが 0 や -1 に変換されています。
これを回避、または後からチェックボックスの形式に訂正する方法はないでしょうか?

もうひとつ

作成された新しいテーブルでは、コピー元のテーブルで「主キー」となっていたフィールドが「主キー」ではなくなります。どうしてなのでしょうか?

Aベストアンサー

[SELECT...INTO ステートメント]Access2000のヘルプより
「新規テーブルに主キーを設定する場合があります。テーブル作成クエリで作成したテーブルのフィールドはクエリの元になるテーブルのフィールドのデータ型とフィールド サイズを継承しますが、それ以外のフィールド プロパティやテーブル プロパティは継承しません。 」

よって「テーブル作成クエリ」ではkalmitさんのような結果になります。

ですから新規作成クエリーでなくテーブルを事前に作成しておき削除クエリー、追加クエリーの順で実行する事をお勧めします。

Qアクセスのクエリでレコード削除ができません。

アクセス超初心者です。

テーブルを商品コードでくっつけて、クエリのデザインビューで表示しました。

いらないレコードを削除しようとしたところ、できません。

くっつける前の、テーブルではできますが、クエリで実行させ、レコードを削除しようとしたところできません。

どうしたらよいのか教えてください。

あと、もうひとつ、クエリで、出力したいフィールド名をドラッグしたあと、削除したいときには、どうすればよいでしょうか?

表示しないなら、できるのですが・・・。削除がわかりません。

よろしくお願いいたします。

Aベストアンサー

二つのテーブル構造が不明
クエリのSQL文も不明
サンプルデータ

以上三点が分からないと回答のしようもありません。
SQL文はクエリをデザインビューで開いて
その上で右クリックすると現れるコンテキストメニューに
SQLビュー が有りますので切り替えると
SELECT ・・・・ てのが有りますのでコピーして此処に貼り付けできます。

クエリはSQL文を分かりやすいように作られたモノで実体はSQL文です。
掲示板ではこのSQL文でやり取りをします。
さて、なぜ削除できないかというと、そのように作ってしまっているからです。
このリンク先の説明を理解すれば原因が突き止められます。
クエリのデータを編集できない状況
http://office.microsoft.com/ja-jp/access-help/HA010097876.aspx

フィールドの削除は、Access2010の場合なら
リボンの中に「列の削除」が有ります。
または、フィールド名の少し上にマウスカーソルを持って行くと
下向きの太い矢印になるのでクリック、列全体が反転しますので Deleteキーで削除
なお、次回からはAccessのバージョンも明記しましょう。

二つのテーブル構造が不明
クエリのSQL文も不明
サンプルデータ

以上三点が分からないと回答のしようもありません。
SQL文はクエリをデザインビューで開いて
その上で右クリックすると現れるコンテキストメニューに
SQLビュー が有りますので切り替えると
SELECT ・・・・ てのが有りますのでコピーして此処に貼り付けできます。

クエリはSQL文を分かりやすいように作られたモノで実体はSQL文です。
掲示板ではこのSQL文でやり取りをします。
さて、なぜ削除できないかというと、そのように作ってしまっているか...続きを読む

QACCESSのテーブル作成クエリについて

お世話になっております。

以下の点について教えてください。
1.テーブル作成クエリで作ったテーブルの書式固定
 クエリ実行後、テーブルは作成されるのですが、クエリで設定した書式が
 反映されません(例:数値→標準→小数点以下3)。

 クエリで設定した書式をテーブルに反映させる方法を教えてください。
 現在は、テーブル作成クエリ実行後、いちいち、テーブルの書式を変更しております。

2.ユーザー設定モードでのオブジェクト移動
 ・ACCESSをユーザー設定 & グループでフィルターの状態で使っています。
 ・この状態でテーブル作成クエリとテーブル作成クエリ実行後に作成されるテーブルを
  グループ分けして分類しておりますが、各グループにあるテーブル作成クエリを
  実行すると、グループ内にあったテーブルが「割り当てられていないオブジェクト」に
  移動してしまいます。

 テーブルをグループ内に固定する方法を教えてください。

よろしくお願いします。 

Aベストアンサー

おそらくは、
テーブル作成クエリよりも

テーブルは予め作成しておき

 削除クエリで、全件削除、
 追加クエリでデータを追加。

こうするのがふさわしいケースだと思われます。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報