ID(自動)、名前、日付、・・・・・、元ID(通常は0)のような形のテーブルAが存在します。
一度登録したものに対して変更・取消が可能です。変更・取消を行うと元IDにどのIDに対して変更・取消が行われたのかわかるように
変更・取消元のIDが入るようになっています。
例)こんな感じです↓
ID(自動)、名前、日付、・・・・・、元ID(通常は0)
1、山田、12/01、・・・・・、0
2、鈴木、12/02、・・・・・、0
3、山田、12/05、・・・・・、1(ここで変更)
4、山田、12/10、・・・・・、3(ここで取消)
5、佐藤、12/15、・・・・・、0
6、鈴木、12/16、・・・・・、2(ここで変更)
この時、取消されたデータは不要なので、データのダウンロード時には省きたいのですが、どのようにしたらいいのか分かりません。
上記例でいくと、ID:1、3、4は不要となるのでデータダウンロード時には、
ID(自動)、名前、日付、・・・・・、元ID(通常は0)
2、鈴木、12/02、・・・・・、0
5、佐藤、12/15、・・・・・、0
6、鈴木、12/16、・・・・・、2(ここで変更)
だけになるようにしたいのです。
どなたかアドバイスお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
お世話になります。
人を識別する項目はないんですか?
元ID を入れる時はどうやってその人が同一であると
(たとえば 1 と 3)判定しているんですか?
あと、変更とか削除とか識別する項目は?
もし人を識別するのが名前だったとしたら(ぶちゃけありえませんが)
こんな感じで、2 と 5 と 6 が絞り込めます。
SELECT
テーブルA.ID,
テーブルA.名前,
テーブルA.日付,
テーブルA.元ID,
テーブルA.区分(1変更2削除)
FROM テーブルA
WHERE
名前 NOT IN (SELECT 名前 FROM テーブルA WHERE 区分 = 2)
naganaga_001様
ご回答ありがとうございます。
必要な情報が不足していましたね。まず、
>人を識別する項目はないんですか?
>元ID を入れる時はどうやってその人が同一であると
>(たとえば 1 と 3)判定しているんですか?
ですが、手元にソースがなくDBから解析を行っている為はっきりとしたことは言えませんが、画面上の作りが以下のようになっています。
ID(自動)、名前、日付、・・・・・、元ID(通常は0)
1、山田、12/01、・・・・・、0 [変更ボタン][取消ボタン]
ですから、それぞれのボタンをクリックして更新する際にIDを元IDに落としているのではないでしょうか?(推測ですいません。)
>あと、変更とか削除とか識別する項目は?
これに関しては、一応「通常:0」「変更:1」「取消:2」のようにフラグを持っています。
ですから、テーブル構成は以下のようになります。
ID(自動)、名前、日付、・・・・・、状態、元ID(通常は0)
1、山田、12/01、・・・・・、1、0
2、鈴木、12/02、・・・・・、1、0
3、山田、12/05、・・・・・、2、1(ここで変更)
4、山田、12/10、・・・・・、2、3(ここで取消)
5、佐藤、12/15、・・・・・、0、0
6、鈴木、12/16、・・・・・、0、2(ここで変更)
上記のように、1つ前のレコードの状態フラグは変化します。
しかし、「名前:山田」のように、[登録]→[変更]→[取消]のようなデータ推移になると、
ID(自動)、名前、日付、・・・・・、状態、元ID(通常は0)
1、山田、12/01、・・・・・、1、0
3、山田、12/05、・・・・・、2、1(ここで変更)
4、山田、12/10、・・・・・、2、3(ここで取消)
上記のような状態になり、1番最初のレコードの状態フラグは[変更]のままになります。
このような状態でもID:1、3、4を省くことは可能でしょうか?
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 3 2022/10/27 17:44
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Android(アンドロイド) Android端末のAppleIDを変更したい Androidのスマホ(Xperia)にAppleM 3 2023/04/03 11:50
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Access(アクセス) ACSESS初心者です マンション管理をACCESSで出来ないかとチャレンジしています。 リレーショ 3 2022/10/08 11:45
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- MySQL SQLで日付別のIDを生成するには 3 2022/10/09 10:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessで別mdbのテーブルをコピー
-
VBとアクセスでSQL文に変...
-
DataGridの中身をDataSetにテー...
-
AccessからExcelへエクスポート...
-
『列名 '担当者CD' があいま...
-
HTMLのテーブルの行数が多くな...
-
アクセステーブル、リンクとロ...
-
DAOでフィールドのデータ型を変...
-
VB.NET データセットとADOレコ...
-
ExcelVBAからAccessMDB内のテー...
-
Excel複数シートをaccessへ一括...
-
COBOLのINVALID KEYが理解でき...
-
CSVファイルのエクスポートでソ...
-
DataGridViewに複数テーブルの...
-
★クリスタルレポートの元になる...
-
同一セッションIDのブラウザを...
-
ACCESS2010 実行時エラー 2766
-
ADO&mdbで、リンクテーブルの...
-
access2007 「#Deleted」
-
SQLを発行とは?クエリの作成と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBとアクセスでSQL文に変...
-
Accessで別mdbのテーブルをコピー
-
他のMDBのテーブルに追加したい
-
SQLを発行とは?クエリの作成と...
-
手動または分散トランザクショ...
-
HTMLのテーブルの行数が多くな...
-
エクセルのテーブルを解除する...
-
ExcelVBAからAccessMDB内のテー...
-
Excel複数シートをaccessへ一括...
-
DataGridの中身をDataSetにテー...
-
CSVファイルのエクスポートでソ...
-
AccessからExcelへエクスポート...
-
.net 複数の主キーを設定する方法
-
『列名 '担当者CD' があいま...
-
COBOLのINVALID KEYが理解でき...
-
アクセステーブル、リンクとロ...
-
ACCESSのテーブル名をリストに...
-
MDBテーブルへの追加変更を教え...
-
【ADO】「Execute」を使うと...
-
ACCESS2010 実行時エラー 2766
おすすめ情報