質問編集履歴

2

追記1

2017/06/28 03:27

投稿

monagano
monagano

スコア246

test CHANGED
File without changes
test CHANGED
@@ -131,3 +131,59 @@
131
131
  サブクエリがネストしており、パフォーマンスに不安があります。
132
132
 
133
133
  修正すべき箇所、より優れた書き方等ありましたら、ご指摘をお願いいたします。
134
+
135
+
136
+
137
+ ###追記1
138
+
139
+ アドバイスいただき、window関数のrankを使用して、以下の通り書き換えてみました。
140
+
141
+ 誤りや改善の余地がありましたら、ご指摘いただけると幸いです。
142
+
143
+ ```SQL
144
+
145
+ SELECT
146
+
147
+ group_name
148
+
149
+ , sum(data1)
150
+
151
+ FROM
152
+
153
+ (
154
+
155
+ SELECT
156
+
157
+ *
158
+
159
+ , rank() OVER (
160
+
161
+ PARTITION BY
162
+
163
+ group_name
164
+
165
+ , user_name
166
+
167
+ ORDER BY
168
+
169
+ to_timestamp(ctime, 'yyyy-mm-dd hh24:mi:ss.MS') DESC
170
+
171
+ , gid DESC
172
+
173
+ )
174
+
175
+ FROM
176
+
177
+ sample_tbl
178
+
179
+ ) AS rank_tbl
180
+
181
+ WHERE
182
+
183
+ rank = 1
184
+
185
+ GROUP BY
186
+
187
+ group_name
188
+
189
+ ```

1

タグ以外の箇所に、PostgreSQLである旨を明記し、バージョン情報を追記しました。

2017/06/28 03:27

投稿

monagano
monagano

スコア246

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,8 @@
1
1
  ###前提・実現したいこと
2
+
3
+ **使用DB PostgreSQL9.1.23**
4
+
5
+
2
6
 
3
7
  以下のテーブルについてSQLによるデータ抽出を行おうとしています。
4
8