私は自分が書いたと思っているものをループする必要があります。 私はコードを掲載しています。正規表現を分割してループします。
select listagg(request_num,',') within group (order by request_num) as request_num,segmentation_name from (
select MST.REQUEST_NUM,seg_dtls.SEGMENT_NAME,LAST_UPDATED_date,seg_dtls.segmentation_name from
(select * from rp_sr_master) Mst,
(select SUBSTR(ANSWER,1,INSTR (ANSWER, '~', 1)-1) AS SM_ID,sr_id from rp_sR_details
WHERE Q_ID in (SELECT Q_ID FROM RP_QUESTIONS WHERE field_id='LM_LRE_Q6')
) Dtls, (select SM_ID, SQL_STATEMENT, CREATION_DATE, UPDATED_DATE, SEGMENT_NAME,segmentation_name ,TOTAL_COUNT
from rp_sEGMENT_master) seg_dtls
where Dtls.SM_ID=seg_dtls.SM_ID
and Dtls.sr_id=Mst.sr_id)
group by segmentation_name;
私はここに直面しています問題は、以下である、上記のコードで
(select SUBSTR(ANSWER,1,INSTR (ANSWER, '~', 1)-1) AS SM_ID,sr_id from rp_sR_details
WHERE Q_ID in (SELECT Q_ID FROM RP_QUESTIONS WHERE field_id='LM_LRE_Q6')
)
、答えはこのようなものになります。
2603~NG non IaaS IT Professional^2600~NG non IaaS Senior IT^2598~NG data profiling SENIOR IT professional^2595~Nigeria data profiling IT professiona
それだけで最初の番号を選びますそれは2603であり、その他は除外されます。
「回答者」のすべての番号をループする方法はありますか? 私はアイデアを探しています。
ありがとうございました。
ありがとう、私は学ぶことを試みています。ここに私の疑問があります。 '\ d +'は式の数字を見つけます。私は答えが345〜nas 2016^234〜ras2034^34_234^help 3のような状況にあります。ここで^と〜の間の桁を見つけるためにregsubを試しましたが、最初の桁に^はありません。私はこれを試しました[0-9] *(?=〜)。 – user3165555