创建和使用 SPL 例程 / 处理集合 |
在您将个别的元素从集合变量选择至元素变量内之后,您可从集合删除该元素。例如,在您以集合查询从集合变量 vertexes 选择一个点之后,您可将该点从集合移除。
图: 删除四个点之一的例程。
CREATE PROCEDURE shapes() DEFINE vertexes SET( point NOT NULL ); DEFINE pnt point; SELECT definition INTO vertexes FROM polygons WHERE id = 207; FOREACH cursor1 FOR SELECT * INTO pnt FROM TABLE(vertexes) IF pnt = '(3,4)' THEN -- calls the equals function that -- compares two values of point type DELETE FROM TABLE(vertexes) WHERE CURRENT OF cursor1; EXIT FOREACH; ELSE CONTINUE FOREACH; END IF; END FOREACH . . . END PROCEDURE;
在前图中,FOREACH 语句声明游标。SELECT 语句是集合派生的查询,从集合变量 vertexes 一次将选择一个元素至元素变量 pnt。
在 GBase 8s SQL 指南:语法 中描述 DELETE 语句的语法。