作者:逸之思 | 来源:互联网 | 2022-12-08 11:15
我的代码:
EXEC SQL
DECLARE C1 CURSOR
FOR SELECT * FROM a
WHERE :field LIKE CONCAT(TRIM(a.number), '%')
ORDER BY a.number DESC;
EXEC SQL
OPEN C1;
EXEC SQL
FETCH C1 INTO :a;
我只需要最大数量的游标 - 所以ORDER BY DESC.
如何只获取光标C1的第一行?
1> Charles..:
EXEC SQL
FETCH C1 INTO :a;
只获取一行...所以只需执行一次.
但是,如果您知道只需要1行,那么最好使用SELECT INTO
withFETCH FIRST ROW ONLY
exec sql
SELECT *
FROM a
INTO :a
WHERE :field LIKE CONCAT(TRIM(a.number), '%')
ORDER BY a.number DESC
FETCH FIRST ROW ONLY;