预先,我只是从Oracle SQL开始,所以请多多包涵。 因此,我想将表中的列粘贴到变量中,问题是我必须通过在每个条目之后添加“,”来调整变量。 以下是我为实现这一目标所做的尝试。
DECLARE
email clob;
counter int;
set counter := 0;
BEGIN
WHILE counter < 500
LOOP
SELECT mail INTO email FROM spam
email += ","
DBMS_OUTPUT.PUT_LINE( 'Email : ' || email )
DBMS_OUTPUT.PUT_LINE( 'Counter : ' || counter )
SET @counter = @counter + 1
END LOOP
END
答案 0 :(得分:1)
嗯,您似乎想连接电子邮件地址。是这样吗?如果是,则:
# Desired result
# print(df)
Date Daycount
0 2020-05-01 0.0
1 2020-06-03 32.0
2 2020-07-01 28.0
3 2021-07-02 361.0
4 2022-08-03 391.0
DECLARE
email VARCHAR2(32000);
BEGIN
FOR cur_r IN (SELECT mail
FROM spam
WHERE ROWNUM < 500
)
LOOP
email := email ||','|| cur_r.mail;
DBMS_OUTPUT.PUT_LINE(cur_r.mail);
END LOOP;
email := RTRIM(email, ',');
END;
ROWNUM
值),因为它的长度限制为255个字符或者,如果您不希望结果字符串超过4000个字符,则可以使用email
:
LISTAGG