回答編集履歴
3
SQL文にpg_typeof関数の記述を追記
test
CHANGED
@@ -5,12 +5,6 @@
|
|
5
5
|
> bigint型が期待しているnumeric型と一致しないと出ます。
|
6
6
|
|
7
7
|
> 数値型→数値型での変換については記載がありませんでした。
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
値の上限値をDBAが制御できない関数に対する戻り値の型を
|
12
|
-
|
13
|
-
ダイレクトにキャストしようとしていることが原因だと思います。
|
14
8
|
|
15
9
|
|
16
10
|
|
@@ -22,7 +16,7 @@
|
|
22
16
|
|
23
17
|
```SQL
|
24
18
|
|
25
|
-
CREATE TABLE
|
19
|
+
CREATE TABLE sample
|
26
20
|
|
27
21
|
(
|
28
22
|
|
@@ -40,7 +34,7 @@
|
|
40
34
|
|
41
35
|
|
42
36
|
|
43
|
-
INSERT INTO
|
37
|
+
INSERT INTO sample
|
44
38
|
|
45
39
|
( cid, ymd, item, qua )
|
46
40
|
|
@@ -106,7 +100,7 @@
|
|
106
100
|
|
107
101
|
)::varchar::numeric
|
108
102
|
|
109
|
-
FROM
|
103
|
+
FROM sample t
|
110
104
|
|
111
105
|
WHERE t.cid = ANY ( $1 )
|
112
106
|
|
@@ -126,7 +120,17 @@
|
|
126
120
|
|
127
121
|
|
128
122
|
|
123
|
+
SELECT ymd
|
124
|
+
|
125
|
+
, g_count
|
126
|
+
|
127
|
+
, d_count
|
128
|
+
|
129
|
+
, pg_typeof( g_count ) g_type
|
130
|
+
|
131
|
+
, pg_typeof( d_count ) d_type
|
132
|
+
|
129
|
-
|
133
|
+
FROM hoge( array[1,2] )
|
130
134
|
|
131
135
|
ORDER BY d_count ;
|
132
136
|
|
@@ -138,20 +142,20 @@
|
|
138
142
|
|
139
143
|
```result
|
140
144
|
|
141
|
-
ymd | g_count | d_count
|
145
|
+
ymd | g_count | d_count | g_type | d_type
|
142
146
|
|
143
|
-
------------+---------+---------
|
147
|
+
------------+---------+---------+---------+---------
|
144
148
|
|
145
|
-
2021-09-01 | 3 | 1
|
149
|
+
2021-09-01 | 3 | 1 | numeric | numeric
|
146
150
|
|
147
|
-
2021-09-02 | 1 | 2
|
151
|
+
2021-09-02 | 1 | 2 | numeric | numeric
|
148
152
|
|
149
|
-
2021-09-03 | 1 | 3
|
153
|
+
2021-09-03 | 1 | 3 | numeric | numeric
|
150
154
|
|
151
|
-
2021-09-04 | 2 | 4
|
155
|
+
2021-09-04 | 2 | 4 | numeric | numeric
|
152
156
|
|
153
|
-
2021-09-05 | 1 | 5
|
157
|
+
2021-09-05 | 1 | 5 | numeric | numeric
|
154
158
|
|
155
|
-
2021-09-06 | 1 | 6
|
159
|
+
2021-09-06 | 1 | 6 | numeric | numeric
|
156
160
|
|
157
161
|
```
|
2
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
数値型(`
|
17
|
+
数値型(`固定`) → 文字列型 → 数値型(`任意`)
|
18
18
|
|
19
19
|
という方式のキャストでどうでしょうか。以下サンプルです。
|
20
20
|
|
1
一部文言を変更
test
CHANGED
@@ -8,13 +8,9 @@
|
|
8
8
|
|
9
9
|
|
10
10
|
|
11
|
-
値の上限値をDBAが制御できない関数
|
11
|
+
値の上限値をDBAが制御できない関数に対する戻り値の型を
|
12
12
|
|
13
|
-
に対する戻り値の型を
|
14
|
-
|
15
|
-
|
13
|
+
ダイレクトにキャストしようとしていることが原因だと思います。
|
16
|
-
|
17
|
-
原因だと思います。
|
18
14
|
|
19
15
|
|
20
16
|
|