如下所示,这是一个非常简单的选择语句。它不在存储过程中,我最近添加了变量START_DT和END_DT,以便我可以更动态地使用它。我收到以下错误:
ORA-06550:第8行第1列:PLS-00428:预计INTO条款 这个SELECT语句 06550. 00000 - "行%s,列%s:\ n%s"
我看了一遍,我看到的大多数问题都与存储过程有关,所以如果这是重复的话我会道歉。我是PL / SQL的新手,但我已经使用SQL Server超过7年了,所以我想这是一个语法问题。以下是我的代码
DECLARE
START_DT DATE;
END_DT DATE;
BEGIN
START_DT := TO_DATE('2015-06-01');
END_DT := TO_DATE('2015-06-30');
select TRUNC(txns.txn_gl_post_dt) DATED,
acc.acc_nbr ACCT,
ACC.ACC_POO_POOL POOL,
txns.txn_amt CHGOFF_AMT
FROM ACCOUNTS ACC
JOIN TXNS TXNS
ON TXNS.TXN_AAD_ID = ACC.ACC_AAD_ID
AND TXNS.TXN_TCD_CODE = 'ADV_CHGOFF'
WHERE ACC.ACC_STATUS_CD in ('CHGOFF','ACTIVE')
AND TRUNC(TXNS.TXN_GL_POST_DT) BETWEEN START_DT AND END_DT
order by 1;
END;
我怀疑这是我如何处理变量,任何想法?
答案 0 :(得分:0)
PL / SQL块不能只运行查询。需要将值插入到另一个表中,插入到变量中,插入到某种编码字符串中。
因此,你不能随便做你想做的事。