teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

全角スペース、全角文字を修正しました

2019/10/04 00:36

投稿

renny
renny

スコア5

title CHANGED
File without changes
body CHANGED
@@ -6,37 +6,40 @@
6
6
  使うテーブル
7
7
 
8
8
  CREATE TABLE T_単価マスタ(
9
- ID COUNTER PRIMARY KEY,
9
+ ID COUNTER PRIMARY KEY,
10
- 会社名 CHAR(255),
10
+ 会社名 CHAR(255),
11
- 商品名 CHAR(255),
11
+ 商品名 CHAR(255),
12
- 単価 INT,
12
+ 単価 INT,
13
- 更新日 DATE,
13
+ 更新日 DATE,
14
- 会社商品名 CHAR(255)
14
+ 会社商品名 CHAR(255)
15
15
  );
16
16
 
17
17
 
18
18
  CREATE TABLE T_入出庫滅失データ(
19
- ID COUNTER PRIMARY KEY,
19
+ ID COUNTER PRIMARY KEY,
20
- 商品名 CHAR(255),
20
+ 商品名 CHAR(255),
21
- 入庫日 DATE,
21
+ 入庫日 DATE,
22
- 出庫日 DATE,
22
+ 出庫日 DATE,
23
- 滅失日 DATA,
23
+ 滅失日 DATA,
24
- 入庫数 INT,
24
+ 入庫数 INT,
25
- 出庫数 INT,
25
+ 出庫数 INT,
26
- 滅失数 INT,
26
+ 滅失数 INT,
27
- 会社名 CHAR(255)
27
+ 会社名 CHAR(255),
28
- 単価 INT,
28
+ 単価 INT,
29
- 更新日 DATE,
29
+ 更新日 DATE,
30
- 単価参照日 DATE,
30
+ 単価参照日 DATE,
31
- 会社商品名 CHAR(255)
31
+ 会社商品名 CHAR(255)
32
32
  );
33
33
 
34
34
 
35
35
  更新クエリSQLコード
36
36
 
37
+ ```ここに言語を入力
38
+
37
39
  UPDATE T_入出庫滅失データ SET T_入出庫滅失データ.単価参照日 = DMax("更新日","T_単価マスタ","[更新日]<=#" & Format([出庫日],"yyyy/mm/dd") & "#" And "会社商品名 = '[T_単価マスタ]![会社商品名]'");
38
40
 
39
41
 
42
+ ```
40
43
 
41
44
 
42
45
 

1

CREATE TABLEの表示、テーブルの表示の統一をしました。

2019/10/04 00:36

投稿

renny
renny

スコア5

title CHANGED
File without changes
body CHANGED
@@ -1,30 +1,63 @@
1
1
  初めまして。閲覧ありがとうございます。
2
- access2016、windows10で在庫管理システムを作っていますが、わからない部分があるので質問せてください。
2
+ access2016、windows10で在庫管理システムを作っていますが、わからない部分があるので質問せてさい。
3
3
 
4
- SQLのupdateでAテーブルの更新日とBテブルの出庫日を比べ、Bテブルの出庫日より小さいAテーブルの更新日の最新を取ってきてCテブルにその日にちを数値更新します。その際、AテーブルBテブルのレコードにある会社商品名が一致しているものを比較します。
4
+ SQLのupdateでT_単価マスタの更新日とT_入出庫滅失デの出庫日を比べ、T_入出庫滅失デの出庫日より小さいT_単価テーブルの更新日の最新を取ってきてT_入出庫滅失デフィールド、単価参照日に数値更新します。その際、T_単価マスタT_入出庫滅失デのレコードにある会社商品名が一致しているものを比較します。
5
5
 
6
-
6
+ 使うテブル
7
7
 
8
+ CREATE TABLE T_単価マスタ(
9
+ ID COUNTER PRIMARY KEY,
10
+ 会社名 CHAR(255),
11
+ 商品名 CHAR(255),
12
+ 単価 INT,
13
+ 更新日 DATE,
14
+ 会社商品名 CHAR(255)
15
+ );
16
+
17
+
18
+ CREATE TABLE T_入出庫滅失データ(
19
+ ID COUNTER PRIMARY KEY,
20
+ 商品名 CHAR(255),
21
+ 入庫日 DATE,
22
+ 出庫日 DATE,
23
+ 滅失日 DATA,
24
+ 入庫数 INT,
25
+ 出庫数 INT,
26
+ 滅失数 INT,
27
+ 会社名 CHAR(255)
28
+ 単価 INT,
29
+ 更新日 DATE,
30
+ 単価参照日 DATE,
31
+ 会社商品名 CHAR(255)
32
+ );
33
+
34
+
35
+ 更新クエリSQLコード
36
+
8
37
  UPDATE T_入出庫滅失データ SET T_入出庫滅失データ.単価参照日 = DMax("更新日","T_単価マスタ","[更新日]<=#" & Format([出庫日],"yyyy/mm/dd") & "#" And "会社商品名 = '[T_単価マスタ]![会社商品名]'");
9
38
 
10
39
 
11
40
 
12
41
 
13
42
 
14
- Aテーブル 2019/8/1
43
+ T_単価マスタ 2019/8/1
15
- Bテブル 2019/9/1   update後→Cテーブル値 20190801
44
+ T_入出庫滅失デ 2019/9/1  
45
+ update後→T_入出庫滅失データ 単価参照日 20190801
16
46
 
47
+ T_単価マスタ 2019/10/1
17
- Aテーブル 2019/10/1
48
+ Bテーブル 2019/11/1
18
- Bテーブル 2019/11/1  update後→Cテブル値 20191001
49
+ update後→T_入出庫滅失デ 20191001
19
50
 
20
51
 
21
52
  しかし実際は
22
53
 
23
- Aテーブル 2019/8/1
54
+ T_単価マスタ 2019/8/1
24
- Bテブル 2019/9/1   update後→Cテーブル値 20191001
55
+ T_入出庫滅失デ 2019/9/1
56
+ update後→T_入出庫滅失データ 20191001
25
57
 
26
- Aテーブル 2019/10/1
58
+ T_単価マスタ 2019/10/1
27
- Bテブル 2019/11/1  update後→Cテーブル値 20191001
59
+ T_入出庫滅失デ 2019/11/1
60
+ update後→T_入出庫滅失データ 20191001
28
61
 
29
62
  となってしまいます。
30
63