回答編集履歴

4

追記

2019/06/29 14:11

投稿

sazi
sazi

スコア25426

test CHANGED
@@ -15,3 +15,5 @@
15
15
  select 日付*1000 + row_number(順序項目) over(partition by 日付 order by 順序項目)
16
16
 
17
17
  ```
18
+
19
+ ただ、上記の結果の項目を保持するのではなく、日付と順序項目は項目を分けておき、必要な時に編集して取得するようにした方が良いかと思います。

3

推敲

2019/06/29 14:10

投稿

sazi
sazi

スコア25426

test CHANGED
@@ -6,6 +6,8 @@
6
6
 
7
7
  postgresで日付毎の連番を取るなら、[ウィンドウ関数](https://www.postgresql.jp/document/11/html/functions-window.html)のrow_number()を用いる事で可能です。
8
8
 
9
+
10
+
9
11
  日付をyyyymmddとし順序を決めるものを順序項目と仮定して、yyyymmdd+連番として、連番を3桁とする場合なら以下のようになります。
10
12
 
11
13
  ```SQL

2

訂正

2019/06/29 14:07

投稿

sazi
sazi

スコア25426

test CHANGED
@@ -6,8 +6,10 @@
6
6
 
7
7
  postgresで日付毎の連番を取るなら、[ウィンドウ関数](https://www.postgresql.jp/document/11/html/functions-window.html)のrow_number()を用いる事で可能です。
8
8
 
9
+ 日付をyyyymmddとし順序を決めるものを順序項目と仮定して、yyyymmdd+連番として、連番を3桁とする場合なら以下のようになります。
10
+
9
11
  ```SQL
10
12
 
11
- select row_number(連番) over(partition by 日付 order by 連番)
13
+ select 日付*1000 + row_number(順序項目) over(partition by 日付 order by 順序項目)
12
14
 
13
15
  ```

1

推敲

2019/06/29 14:04

投稿

sazi
sazi

スコア25426

test CHANGED
@@ -10,4 +10,4 @@
10
10
 
11
11
  select row_number(連番) over(partition by 日付 order by 連番)
12
12
 
13
- ```SQL
13
+ ```