質問編集履歴

2

リライト

2023/03/08 05:14

投稿

tmp-user
tmp-user

スコア44

test CHANGED
File without changes
test CHANGED
@@ -1,13 +1,28 @@
1
+ ※質問の仕方が悪かったのでリライトします
2
+
3
+
4
+
1
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-08/48e9b581-47c1-4506-9741-4fc080deaeb1.png)
5
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-08/d406f195-b01a-4c16-a42d-e927efe6c12b.png)
6
+
2
7
  画像のようなデータがあるのですが、
8
+ IDの前方4桁分が一致するデータをグループ化して
3
- 1桁目が0,1,2件数を取得したいです。
9
+ 下記ようなデータを取得したいです。
10
+
11
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-08/dc9f5020-7cac-4848-8c78-4f36c6a65ab6.png)
12
+
4
13
 
5
14
  ```SQL
6
15
  SELECT count(id) FROM test GROUP BY id
7
16
  ```
8
17
 
9
- ![イメジ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-08/158be517-9d74-4f74-b066-9d0fad51dc52.png)
18
+ にどういった句を追加すれば前方4桁が一致するデタでgroupby出来るのでしょう??
19
+ ※数値はランダムで、とにかく前方4桁でグループ化したいです
10
20
 
21
+ 回答頂いたものを参考にすると、
22
+ ```SQL
23
+ LEFT(count(id),4)
24
+ ```
25
+ などが必要なのかなと思ったのですが
11
- にどういっ句をついすれば前方1桁が一致するデータgroupby出来るのでょう??
26
+ idが数値型の上手く動きませんでした。。
12
27
 
13
28
  DBはPostgreSQLです。

1

追記

2023/03/08 03:30

投稿

tmp-user
tmp-user

スコア44

test CHANGED
File without changes
test CHANGED
@@ -9,3 +9,5 @@
9
9
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-08/158be517-9d74-4f74-b066-9d0fad51dc52.png)
10
10
 
11
11
  にどういった句をついかすれば前方1桁が一致するデータでgroupby出来るのでしょう??
12
+
13
+ DBはPostgreSQLです。