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

質問編集履歴

4

回答への御礼

2017/02/06 00:35

投稿

TomoKubota
TomoKubota

スコア53

title CHANGED
File without changes
body CHANGED
@@ -75,4 +75,15 @@
75
75
  というような流れになるかと思います。
76
76
 
77
77
  上記内容をストアドファンクションで作成することになるのかな、
78
- と思っています
78
+ と思っています
79
+
80
+
81
+ 回答への御礼
82
+ みなさま、ご回答に御礼申し上げます。
83
+ また返信が遅くなってしまった方については、申し訳ありません。
84
+ ベストアンサーについては大変迷ったのですが、
85
+ データを横持ちしたい、という当方の要望を正確にテストまで実行いただいた方とさせていただきました。
86
+
87
+ この度の質問では大変勉強になり、
88
+ お時間を割いてくださった方には、繰り返しになりますが、
89
+ 本当にありがとうございました。

3

質問内容の一部修正

2017/02/06 00:35

投稿

TomoKubota
TomoKubota

スコア53

title CHANGED
File without changes
body CHANGED
@@ -42,4 +42,37 @@
42
42
  くらいの認識ではおります。
43
43
 
44
44
  ただ、ストアドファンクションは書いたことがなく、
45
- もしこれを使用する場合には、この点も考慮していただくと大変ありがたいです。
45
+ もしこれを使用する場合には、この点も考慮していただくと大変ありがたいです。
46
+
47
+ 追記2 show indexの結果です
48
+ mysql> SHOW INDEX FROM wp_cf7dbplugin_submits;
49
+ +------------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
50
+ | Table | Non_unique | Key_name | Seq_in_index | Column_name |Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
51
+ +------------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
52
+ | wp_cf7dbplugin_submits | 0 | PRIMARY | 1 | submit_time |A | 173 | NULL | NULL | | BTREE | | |
53
+ | wp_cf7dbplugin_submits | 0 | PRIMARY | 2 | form_name |A | 173 | NULL | NULL | | BTREE | | |
54
+ | wp_cf7dbplugin_submits | 0 | PRIMARY | 3 | field_name |A | 1038 | NULL | NULL | | BTREE | | |
55
+ +------------------------+------------+----------+--------------+-------------+-----------+-------------+
56
+
57
+ 追記3 質問の一部を修正させていただきます。
58
+ すみません、やりたいことが明確になっておらず、質問の内容を変えさせていただくことになってしまいました。
59
+
60
+ 上記テーブル構造で、
61
+ 現状、投稿時間、フォーム名、フィールド名をキーとしており、
62
+ WordPressのフォームで投稿を行うと、そのフォームのフィールド数分、
63
+ レコードが作成されることとなります。
64
+ もし別にテーブルを一つ用意し、
65
+ フィールド名とその値を横持ち(RowではなくClmとして)するようにInsertしていくようなSQLを書きたいと考えています。
66
+
67
+ 現在のテーブルに変換済みFLGのようなフィールドを持たせ、
68
+ 上記インサート処理が終了したら、FLGをtrueにするようにして、
69
+ 変換処理が完了しているかを確認できるようにしておきたいです。
70
+
71
+ ですのでやはりやりたいこととしては、
72
+ FLGが立っていないデータを塊ごとにselectし、
73
+ これをもとに一意のレコードを作成し、
74
+ 別テーブルにinsertする、
75
+ というような流れになるかと思います。
76
+
77
+ 上記内容をストアドファンクションで作成することになるのかな、
78
+ と思っています

2

追記

2017/02/03 03:09

投稿

TomoKubota
TomoKubota

スコア53

title CHANGED
File without changes
body CHANGED
@@ -36,7 +36,7 @@
36
36
 
37
37
  追記
38
38
  この質問を記入させていただく時点では、
39
- ストアドファンクションを作成し、
39
+ ストアドファンクション(テーブルロックしたくないので)を作成し、
40
40
  IDがnullのレコードを上記3つのキーごとにグループ化してcountし、
41
41
  whileを使ってループするような感じで行けるのかな、
42
42
  くらいの認識ではおります。

1

追記

2017/02/03 02:28

投稿

TomoKubota
TomoKubota

スコア53

title CHANGED
File without changes
body CHANGED
@@ -31,4 +31,15 @@
31
31
  DBはmysql、
32
32
  OSはCentos6.5です。
33
33
 
34
- よろしくお願いいたします。
34
+ よろしくお願いいたします。
35
+
36
+
37
+ 追記
38
+ この質問を記入させていただく時点では、
39
+ ストアドファンクションを作成し、
40
+ IDがnullのレコードを上記3つのキーごとにグループ化してcountし、
41
+ whileを使ってループするような感じで行けるのかな、
42
+ くらいの認識ではおります。
43
+
44
+ ただ、ストアドファンクションは書いたことがなく、
45
+ もしこれを使用する場合には、この点も考慮していただくと大変ありがたいです。