本章介绍insert()的多种用法。
描述:
对序列插入成员。
语法:
A.insert(k,X) |
将序列X的成员插入到A的位置k前,返回A。 |
A.insert(k,x) |
在A的位置k前插入成员x,返回A。 |
备注:
在A序列的位置k前插入X的序列成员或x成员。当参数k省略时,假定A有序,插入成员X(或x),若A中已有成员X(或x)则不插入。插入成员时有索引则自动更新,并检查唯一性。
参数:
k |
插入成员位置,当k==0时,在最后追加,k小于0则从末尾开始数。 |
A |
序列。 |
X |
要插入的成员组成的序列。 |
x |
成员。 |
选项:
@n |
返回增加的记录或排列。 |
返回值:
序列
示例:
|
A |
|
1 |
=["a","c","d","e","f"] |
|
2 |
=A1.insert(0,"g") |
[a,c,d,e,f,g] ,在末尾追加,改变了A1。 |
3 |
=A1.insert(2,["g","j"]) |
[a,g,j,c,d,e,f,g] ,在第二个成员之前插入。 |
4 |
=demo.query("select * from STUDENTS") |
|
5 |
=A4.insert@n(2,ID+10:ID,"Lily":NAME,"M":GENDER,15:AGE) |
返回新增的记录。 |
6 |
=A1.insert(,"b") |
[a,b,g,j,c,d,e,f,g],假定A1有序,插入新成员b。 |
7 |
=A1.insert(,"a") |
|
8 |
=A1.insert(-2,"h") |
返回结果:[a,b,g,j,c,d,e,h,f,g],参数k<0,从末尾开始数。 |
相关概念:
描述:
向序表中插入一条记录或多条记录。
语法:
T.insert(k) |
在T的位置k前插入空记录,k为0在最后插入,返回T。 |
T.insert(k,xi:Fi,…) |
在T的Fi 值为 xi.的位置k前插入一条记录,返回T。参数k省略时,假定T对键有序,插入记录,若键已存在则不插入。 |
T.insert(k:A,xi:Fi,…) |
在T的Fi 值为 xi.的位置k前插入多条记录,返回T,插入的条数由序列A的长度决定。 |
备注:
向序表T中插入一条记录或多条记录。插入记录时有索引则自动更新,并检查唯一性。
参数:
k |
插入成员或者记录的位置。 |
xi |
插入新记录的Fi字段值。 |
Fi |
插入记录的字段名,Fi省略,则对应为第i个字段。 |
T |
序表。 |
A |
序列或者整数;如果A为整数,则与to(A)相等。 |
选项:
@n |
返回新插入的记录或排列。 |
@r(k:A) |
按照字段的顺序,从第k个记录开始,把序列A插入到序表T。 |
@f(k:A) |
从第k个记录开始,用序列A按照字段名称插入到序表T。仅插入A和T相同的字段名称对应的字段值。 |
返回值:
序表
示例:
|
A |
|
1 |
=create(id,name,age) |
构造空序表:
|
2 |
=A1.insert(0,1,"Jack",29) |
追加记录,字段值为1、Jack、 29:
|
3 |
=A1.insert(1,2,"Lucy",30) |
第一条记录之前插入记录,字段值为2、Lucy、 30:
|
4 |
=A1.insert(0) |
在末尾追加一条空记录:
|
5 |
=A1.insert(0:3) |
在末尾追加三条空记录:
|
6 |
=A1.insert@n(2:1,10,"Lily",30) |
返回插入的记录:
|
7 |
=create(ID,Name,Age) |
|
8 |
=A7.insert(0:A1,id:ID,name:Name,age:Age) |
把A1的记录逐条添加到A7中:
|
9 |
=A1.delete(A1.select(id<2)) |
|
10 |
=A7.insert@r(5:A9) |
从第5个记录开始,把A9插入到A7:
|
11 |
=create(ID,Name,AGE) |
|
12 |
=A11.insert@f(3:A7) |
从第3个记录开始,把A7插入到A11,仅插入ID和Name字段:
|
13 |
=A1.keys(id) |
设置A1主键为id此时序列A1的数据如下:
|
14 |
=A1.insert(,5,"Mary",28) |
省略参数k,A1对id有序,插入记录:
|
15 |
=A1.insert(,2,"CC",32) |
结果同上,键值为2的记录已存在时,不再插入。 |
16 |
=file("D:\\test.txt").import@t() |
test.txt只定义了表头:
|
17 |
=A16.insert(0,1,"2008-8-4") |
|
相关概念: