回答編集履歴

3

変更

2017/08/24 12:09

投稿

A.Ichi
A.Ichi

スコア4070

test CHANGED
@@ -2,14 +2,40 @@
2
2
 
3
3
  ```sql
4
4
 
5
- CREATE SEQUENCE hoge_table_hogeコード_seq;
5
+ ts2100=> CREATE SEQUENCE hoge_table_hogeコード_seq;
6
6
 
7
- create table hoge_table (hogeコード text);
7
+ CREATE SEQUENCE
8
8
 
9
- insert into hoge_table values('100');
9
+ ts2100=> create table hoge_table (id char, hogeコード text);
10
+
11
+ CREATE TABLE
12
+
13
+ ts2100=> insert into hoge_table values ('A','010'),('B','020'),('C','030');
14
+
15
+ INSERT 0 3
16
+
17
+ ts2100=> SELECT setval('hoge_table_hogeコード_seq', (SELECT MAX(hogeコード) FROM hoge_table)::int);
18
+
19
+ setval
20
+
21
+ --------
22
+
23
+ 30
24
+
25
+ (1 row)
10
26
 
11
27
 
12
28
 
13
- SELECT setval('hoge_table_hogeコード_seq', (SELECT MAX(hogeコード) FROM hoge_table)::int);
29
+ ts2100=> SELECT setval('hoge_table_hogeコード_seq', (SELECT MAX(hogeコード)::int FROM hoge_table));
30
+
31
+ setval
32
+
33
+ --------
34
+
35
+ 30
36
+
37
+ (1 row)
38
+
39
+
14
40
 
15
41
  ```

2

変更

2017/08/24 12:09

投稿

A.Ichi
A.Ichi

スコア4070

test CHANGED
@@ -1,4 +1,4 @@
1
- たぶんMAXのところの項目がCHARになっていて数字が入っているとしています
1
+ MAXのところの項目hogeコードがCHARになっていて数字が入っているとしています
2
2
 
3
3
  ```sql
4
4
 

1

変更

2017/08/24 09:07

投稿

A.Ichi
A.Ichi

スコア4070

test CHANGED
@@ -1,15 +1,15 @@
1
- たぶんMAXのところの項目がCHARになっているためではなかと
1
+ たぶんMAXのところの項目がCHARになっていて数字が入っていとしてます
2
2
 
3
3
  ```sql
4
4
 
5
5
  CREATE SEQUENCE hoge_table_hogeコード_seq;
6
6
 
7
- create table hoge_table (hogeコード int);
7
+ create table hoge_table (hogeコード text);
8
8
 
9
- insert into hoge_table values(100);
9
+ insert into hoge_table values('100');
10
10
 
11
11
 
12
12
 
13
- SELECT setval('hoge_table_hogeコード_seq', (SELECT MAX(hogeコード) FROM hoge_table));
13
+ SELECT setval('hoge_table_hogeコード_seq', (SELECT MAX(hogeコード) FROM hoge_table)::int);
14
14
 
15
15
  ```