- PR -

PL/SQLでの値取得処理

1
投稿者投稿内容
まな
常連さん
会議室デビュー日: 2005/10/26
投稿数: 45
投稿日時: 2006-04-17 14:54
こんにちわ。PL/SQLで、下記のようなselect into文を使っています。

SELECT sg, ko, sj, mg, MAX(hiniti) BULK COLLECT INTO recG002
FROM
テストテーブル
WHERE
sg = 顧客テーブル.sg AND
hiniti >= '20060606' AND
hiniti <= '20060604' AND
sj = 顧客テーブル.sj AND
mg = 顧客テーブル.mg
GROUP BY
sg, ko, sj, mg;

ORA-00913 値の個数が多きすぎます。
というエラーが出てしまいます。
sg, ko, sj, mg, MAX(hiniti)を取得していのですが、どうしたらよいのでしょうか。
分かるかた、お願いします。
Yam
大ベテラン
会議室デビュー日: 2003/09/13
投稿数: 179
お住まい・勤務地: だんじり祭りの地
投稿日時: 2006-04-17 15:12
recG002の項目数がSELECTしてきた項目数と不一致なのでは?
まな
常連さん
会議室デビュー日: 2005/10/26
投稿数: 45
投稿日時: 2006-04-17 17:14
recG002は以下のように定義しています。
TYPE blk_G002_type IS TABLE OF G002%ROWTYPE INDEX BY BINARY_INTEGER;
recG002 blk_G002_type;
項目数と不一致しているのでしょうか。よく分からないので、分かるかた、お願いします。
ぶさいくろう
ぬし
会議室デビュー日: 2005/11/22
投稿数: 1232
お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
投稿日時: 2006-04-17 17:21
> > recG002の項目数がSELECTしてきた項目数と不一致なのでは?
> recG002は以下のように定義しています。
> TYPE blk_G002_type IS TABLE OF G002%ROWTYPE INDEX BY BINARY_INTEGER;
> recG002 blk_G002_type;
> 項目数と不一致しているのでしょうか。

(;゚Д゚) ・・・。
Penguin
会議室デビュー日: 2006/03/01
投稿数: 13
投稿日時: 2006-04-17 17:35
G002表の項目数がSELECT文中の列数と不一致。
1

スキルアップ/キャリアアップ(JOB@IT)