
No.4ベストアンサー
- 回答日時:
まず、前提条件として'ABCD○ABCDE○ABC○'の改行マークの位置が固定位置であれば可能です。
takoponさんの回答にある様にSUBSTRを利用します。例えば改行マーク位置が5文字目/11文字目/15文字目という風に固定位置だと仮定すれば
SELECT SUBSTR(Mark,1,4),SUBSTR(Mark,6,10),SUBSTR(Mark,12,3) into moji1,moji2,moji3
FROM ~
ちなみにMarkとう項目に'ABCD○ABCDE○ABC○'が設定されていて、分割後の変数がmoji1~moji3となります。
ということでINTO文でやれると思います。
文字列改行マーク位置が不定の場合はSQL文1回での処理は不可能なので、takoponさんのご指摘の通りPL/SQLであればFECH文を作成して項目単位での処理を行ってください。
VB,VBAであればレコードセットもしくはoo40でのリザルトセットを作成して回してください。
No.3
- 回答日時:
OracleのPL/SQL文でということならば、
INSTRB(S,CHR(13)||CHR(10),1)で
文字列Sの先頭から初めて出現する改行コードのCRの位置Xをしらべて、
SUBSTRB(S,1,X - 1) で最初の改行までの文字列S1を、
SUBSTRB(S,X + 2) で残りの文字列S2を切り出して、
S1をどこかテーブルか何かに格納し、
S2をSに代入
というような処理をループさせれば、
改行を除去した結果が取れると思います。
No.2
- 回答日時:
> その文字列をまず改行コード毎に分割します
レコードが複数作成される、ということなんでしょうか?
(上記の例なら1行が3レコードに分割される、ということ?)
レコードにその他の列はあるのでしょうか?
無いのならばOracleなり、Accessなり、CSV出力する文を作成して、
インポートし直すのがもっとも簡単かと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
キーが同じを複数行を1行にま...
-
"カレントレコードがありません...
-
改行コード
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
OracleのSQL*PLUSで、デー...
-
あるカラムのMAX値+1をINSERTし...
-
ACCESSの集計クエリで3件ある...
-
select insertで複数テーブルか...
-
Accessで別テーブルの値をフォ...
-
ADO VBA 実行時エラー3021
-
DATE型にNULLをセットするには?
-
VLOOKUPについて
-
抽出したデータを修正して元の...
-
日本語の表名、列名の利用について
-
DataGridViewの、選択されてい...
-
実績累計の求め方と意味を教え...
-
ワードの差込印刷で教えて下さ...
-
アクセスでレポートの1印刷内...
-
決定性有限オートマトン
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
キーが同じを複数行を1行にま...
-
改行コード
-
"カレントレコードがありません...
-
DynamicSQL
-
Access2007 Mid関数
-
accessからexcelへのエクスポー...
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
OracleのSQL*PLUSで、デー...
-
Accessで別テーブルの値をフォ...
-
決定性有限オートマトン
-
select insertで複数テーブルか...
-
DataGridViewの、選択されてい...
-
ファイル書込みで一行もしくは...
-
ADO VBA 実行時エラー3021
-
レコードが存在しなかった場合
-
最新の日付とその金額をクエリ...
-
実績累計の求め方と意味を教え...
-
Date型にNULLをセットしたい V...
-
SELECTで1件のみ取得するには?
おすすめ情報