質問編集履歴

2

テストデータを作成するコードを追加

2020/05/01 13:44

投稿

koa
koa

スコア7

test CHANGED
File without changes
test CHANGED
@@ -6,13 +6,13 @@
6
6
 
7
7
 
8
8
 
9
- 指定した区間内の指定選手noの順位が2位以上(1位または2位)の割合を取得したい。ただし、指定した区間に該当する選手の情報がない場合はNULL(pycopg2で取得した場合はNone)にしたい。
9
+ 指定した区間内の指定選手no(player_no)の順位(rank)が2位以上(1位または2位)の割合(rate)を取得したい。ただし、指定した区間に該当する選手の情報がない場合はNULL(pycopg2で取得した場合はNone)にしたい。
10
10
 
11
11
 
12
12
 
13
13
  **例)**
14
14
 
15
- |ゲーム|選手no|日付|順位|
15
+ |game|player_no|date|rank|
16
16
 
17
17
  |:--|:--:|--:|--:|
18
18
 
@@ -52,7 +52,7 @@
52
52
 
53
53
  **取得したいデータ**
54
54
 
55
- |選手no|割合|
55
+ |player_no|rate|
56
56
 
57
57
  |:--|--:|
58
58
 
@@ -118,7 +118,57 @@
118
118
 
119
119
 
120
120
 
121
+
122
+
123
+ # CREATE,INSERT用
124
+
125
+ def execute_sql_no_result(sql):
126
+
127
+ dsn = "postgresql://{}:{}@{}:{}/{}".format(user_name, password, host_name, port, database)
128
+
129
+ with psycopg2.connect(dsn) as conn:
130
+
131
+ with conn.cursor() as cur:
132
+
133
+ cur.execute(sql)
134
+
135
+
136
+
137
+ # テストデータ作成
138
+
139
+ execute_sql_no_result("DROP TABLE IF EXISTS test")
140
+
141
+ execute_sql_no_result("CREATE TABLE test (game INTEGER,player_no INTEGER,date timestamp,rank INTEGER);")
142
+
143
+ execute_sql_no_result("INSERT INTO test VALUES ('1','1','2020/1/1 0:00:00','3');")
144
+
145
+ execute_sql_no_result("INSERT INTO test VALUES ('1','2','2020/1/1 0:00:00','1');")
146
+
147
+ execute_sql_no_result("INSERT INTO test VALUES ('1','3','2020/1/1 0:00:00','2');")
148
+
149
+ execute_sql_no_result("INSERT INTO test VALUES ('2','1','2020/1/2 0:00:00','1');")
150
+
151
+ execute_sql_no_result("INSERT INTO test VALUES ('2','4','2020/1/2 0:00:00','2');")
152
+
153
+ execute_sql_no_result("INSERT INTO test VALUES ('2','6','2020/1/2 0:00:00','4');")
154
+
155
+ execute_sql_no_result("INSERT INTO test VALUES ('2','10','2020/1/2 0:00:00','3');")
156
+
157
+ execute_sql_no_result("INSERT INTO test VALUES ('3','1','2020/1/3 0:00:00','3');")
158
+
159
+ execute_sql_no_result("INSERT INTO test VALUES ('3','7','2020/1/3 0:00:00','2');")
160
+
161
+ execute_sql_no_result("INSERT INTO test VALUES ('3','8','2020/1/3 0:00:00','1');")
162
+
163
+ execute_sql_no_result("INSERT INTO test VALUES ('3','9','2020/1/3 0:00:00','4');")
164
+
165
+ execute_sql_no_result("INSERT INTO test VALUES ('3','11','2020/1/3 0:00:00','5');")
166
+
167
+
168
+
121
169
  execute_sql("ここのSQL文が知りたいです")
170
+
171
+
122
172
 
123
173
  ```
124
174
 

1

説明希望の旨を追加

2020/05/01 13:44

投稿

koa
koa

スコア7

test CHANGED
File without changes
test CHANGED
@@ -142,4 +142,6 @@
142
142
 
143
143
 
144
144
 
145
+ ### その他
146
+
145
- ここにより詳細情報を記載てください。
147
+ 簡単説明も頂けると嬉しいです