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

質問編集履歴

1

質問内容のレイアウトを修正しました。お見苦しい点がございましたらご指摘お願いいたします。

2022/12/21 00:59

投稿

n.taka-hjw
n.taka-hjw

スコア5

title CHANGED
File without changes
body CHANGED
@@ -2,6 +2,7 @@
2
2
  今回は、postgresqlのテーブルからどのようなSQLで抽出すればよいか、について質問をさせていただきます。
3
3
  よろしくお願い致します。
4
4
 
5
+ ```ここに言語を入力
5
6
  [ TABLE ]
6
7
  create table exdb.t_test
7
8
  (
@@ -12,34 +13,32 @@
12
13
  );
13
14
 
14
15
  [ INSERT DATA ]
15
- 2021-01-01, 980, "001", 1
16
+ insert into t_test values('2021-01-01',980,"001",1);
16
- 2021-05-01, 1980, "001", 2
17
+ insert into t_test values('2021-05-01',1980,"001",2);
17
- 2021-10-01, 4580, "002", 2
18
+ insert into t_test values('2021-10-01',4580,"002",2);
18
- 2022-04-01, 29800, "001", 1
19
+ insert into t_test values('2022-04-01',29800,"001",1);
19
- 2022-07-01, 15800, "002", 2
20
+ insert into t_test values('2022-07-01',15800,"002",2);
20
- 2022-08-01, 12800, "003", 1
21
+ insert into t_test values('2022-08-01',12800,"003",1);
22
+ ```
21
23
 
22
24
  [ 実現したいSELECT結果 ]
23
- CD 21年回数 21年金額 22年回数 22年金額
25
+ |CD|21年回数|21年金額|22年回数|22年金額|
24
- ---|-------|-------|-------|--------|
25
- 001| 3 | 2960 | 1 | 29800 |
26
+ |001|3|2960|1|29800
26
- ---|-------|-------|-------|--------|
27
- 002| 1 | 4580 | 2 | 15800 |
27
+ |002|1|4580|2|15800
28
- ---|-------|-------|-------|--------|
29
- 003| 0 | 0 | 1 | 12800 |
28
+ |003|0|0|1|12800
30
- ---|-------|-------|-------|--------|
31
29
 
32
30
  ※ここでは2021年~22年のフィールドですが、実際データは2010年から始まり固定項目となります。
33
31
  ※年度単位が希望でしたが、今後読み込み側のプログラム側で年度制御を行なおうと考えているため、今回のSQLは年単位で抽出します。
34
32
  ※取り急ぎ、上記の抽出結果をExcelに貼り付けて別表を作成するために使用したいと思っています(今後はJavaより取得していきます)
35
33
 
36
34
  [ チェレンジしたところまで ]
35
+ ```SQL
37
36
  select
38
37
  client_cd,date_of_use,usage_amount,count_of_use
39
38
  from exdb.t_test
40
39
  group by client_cd,date_of_use,usage_amount,count_of_use
41
40
  order by clinet_cd;
42
-
41
+ ```
43
42
  ▼▼-----結果-----▼▼
44
43
  001 2021-01-01 980 1
45
44
  001 2021-05-01 1980 2