loop.md 1.2 KB
Newer Older
M
Mars Liu 已提交
1 2 3 4 5 6 7
# 循环

下面哪一项定义的函数可以生成指定范围内的整数数列?

## 答案

```postgresql
M
format  
Mars Liu 已提交
8 9 10 11 12 13 14 15
create function gen(start integer, stop integer)
    returns setof integer as
$$
begin
    for idx in start .. stop
        loop
            return next idx;
        end loop;
M
Mars Liu 已提交
16 17 18 19 20 21 22 23 24
end;
$$ language plpgsql;
```

## 选项

### A

```postgresql
M
format  
Mars Liu 已提交
25 26 27 28 29 30 31
create function gen(start integer, stop integer) returns integer as
$$
begin
    for idx in start .. stop
        loop
            return idx;
        end loop;
M
Mars Liu 已提交
32 33 34 35 36 37 38
end;
$$ language plpgsql;
```

### B

```postgresql
M
format  
Mars Liu 已提交
39 40 41 42 43 44 45 46
create function gen(start integer, stop integer)
    returns integer as
$$
begin
    for idx in start .. stop
        loop
            yield idx;
        end loop;
M
Mars Liu 已提交
47 48 49 50 51 52 53
end;
$$ language plpgsql;
```

### C

```postgresql
M
format  
Mars Liu 已提交
54 55 56 57 58 59 60 61 62
create function gen(start integer, stop integer)
    returns setof integer as
$$
begin
    for idx in start .. stop
        loop
            return idx;
            idx += 1;
        end loop;
M
Mars Liu 已提交
63 64 65 66 67 68 69
end;
$$ language plpgsql;
```

### D

```postgresql
M
format  
Mars Liu 已提交
70 71 72 73 74 75 76 77
create function gen(start integer, stop integer)
    returns setof integer as
$$
begin
    for idx in start .. stop
        loop
            select idx;
        end loop;
M
Mars Liu 已提交
78 79 80
end;
$$ language plpgsql;
```