返回首页

gbase数据、南大通用产品文档:GBase8aINSERT VALUES

更新日期:2024年09月11日

功能说明
执行INSERT VALUES 时自增列可以不指定值,也可以指定特定值NULL、0、
default,都会按集群自增规则自动维护。
示例
示例1:随机分布表上创建自增列,自增列数据自动维护。
create table t1(a int auto_increment primary key,b varchar(100), c int);
insert into t1(b,c) values('a1',1),('a2',2),('a3',3),('a4',4),('a5',5);
gbase> SELECT * from t1;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
| 6 | a2
|
2 |
| 10 | a3
|
3 |
| 14 | a4
|
4 |
| 18 | a5
|
5 |
+---+------+------+
5 rows in set (Elapsed: 00:00:00.03)

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1026
示例2:哈希分布表上创建自增列
create table t2(a int auto_increment primary key,b varchar(100), c int)
distributed by ('b');
insert into t2(b,c) values('a1',1),('a2',2),('a3',3),('a4',4),('a5',5);
gbase> SELECT * FROM t2;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
| 6 | a5
|
5 |
| 1 | a3
|
3 |
| 3 | a2
|
2 |
| 4 | a4
|
4 |
+---+------+------+
5 rows in set (Elapsed: 00:00:00.02)
gbase> SELECT * FROM t2 ORDER BY a;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 1 | a3
|
3 |
| 2 | a1
|
1 |
| 3 | a2
|
2 |
| 4 | a4
|
4 |
| 6 | a5
|
5 |
+---+------+------+
5 rows in set (Elapsed: 00:00:00.04)

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1027
示例3:自增列插入0,null,default。
CREATE
TABLE
t3(a
INT
AUTO_INCREMENT
PRIMARY
KEY,b
VARCHAR(100), c INT);
gbase> INSERT INTO t3 VALUES(0,'a1',1);
Query OK, 1 row affected (Elapsed: 00:00:00.05)
gbase> SELECT * FROM t3;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
+---+------+------+
1 row in set (Elapsed: 00:00:00.01)
gbase> INSERT INTO t3 VALUES(NULL,'a2',2);
Query OK, 1 row affected (Elapsed: 00:00:00.04)
gbase> SELECT * FROM t3;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
| 4 | a2
|
2 |
+---+------+------+
2 rows in set (Elapsed: 00:00:00.00)
gbase> INSERT INTO t3 VALUES(NULL,'a3',3);

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1028
Query OK, 1 row affected (Elapsed: 00:00:00.05)
gbase> SELECT * FROM t3;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
| 4 | a2
|
2 |
| 6 | a3
|
3 |
+---+------+------+
3 rows in set (Elapsed: 00:00:00.01)
gbase> INSERT INTO t3 VALUES(DEFAULT,'a4',4);
Query OK, 1 row affected (Elapsed: 00:00:00.04)
gbase> SELECT * FROM t3;
+---+------+------+
| a | b
| c
|
+---+------+------+
| 2 | a1
|
1 |
| 4 | a2
|
2 |
| 6 | a3
|
3 |
| 8 | a4
|
4 |
+---+------+------+
4 rows in set (Elapsed: 00:00:00.01)

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1029

Invalid UDT field number

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 325
-
应用程序定义了 UDTMetaData.setXXX() 或 UDTMetaData.getXXX() 方法并指定字段数小
于 0 或者大于 UDTMetaData.setFieldCount() 方法设置的值。

示例
示例1:返回“1 << 2”的计算结果。
gbase> SELECT 1 << 2 FROM t;
+--------+
| 1 << 2 |
+--------+
| 4 |
+--------+
1 row in set
说明
“1”对应的比特值为“0001”,左移两位为“0100”,对应的十进制为“1”。