返回首页

gbase数据、南大通用产品文档:GBase8a示例

更新日期:2024年09月11日


创建用于训练的数据表并插入训练数据。
CREATE TABLE houses (id INT, tax INT, bedroom INT, bath REAL, price INT,
size INT, lot INT);
INSERT INTO houses VALUES
( 1,
590,
2,
1,
50000,
770,
22100),
( 2,
1050,
3,
2,
85000,
1410,
12000),
( 3,
20,
3,
1,
22500,
1060,
3500),
( 4,
870,
2,
2,
90000,
1300,
17500),
( 5,
1320,
3,
2,
133000,
1500,
30000),
( 6,
1350,
2,
1,
90500,
820,
25700),
( 7,
2790,
3,

为j 值相同,
所以avg 值相同,
计算过程为avg = (8 + 4 + 6) / 3 = 6,
i=2,
j=1,
k=4
时,avg=5.5,计算过程为avg = (8 + 4 + 6 + 4) / 4 = 5.5。
示例2:AVG(DISTINCT k) OVER(PARTITION BY i)
gbase> SELECT *,AVG(DISTINCT k) OVER(PARTITION BY i) AS avg
FROM t1;
+------+------+------+--------+
| i
| j
| k
| avg
|
+------+------+------+--------+
|
2 |
3 |
6 | 6.0000 |
|
2 |
3 |
4 | 6.0000 |
|
2 |
5 |
8 | 6.0000 |
|
2 |
1 |
4 | 6.0000 |
|
3 |
2 |
2 | 5.0000 |
|
3 |
2 |
4 | 5.0000 |
|
3 |
2 |
2 | 5.0000 |
|
3 |
4 |
6 | 5.0000 |
|
3 |
1 |
2 | 5.0000 |
|
3 |
5 |
8 | 5.0000 |

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
893
+------+------+------+--------+
10 rows in set
用例分析:首先根据i 分组,由于没有ORDER BY 部分,则同组内的累加和、
COUNT 值都相等,将同组内的k 值进行累加同时计算COUNT 值,如果遇到不
同组,从0 重新开始。
以i 值为2、2、2、2,j 值为5、3、3、1,k 值为8、4、6、4,avg 值为6、6、6、
6 为例,因为在这4 组数值中,不同的k 值为6、4、8,所以avg= (6 + 4 + 8) / 3 =
6。

当您使用 INSERT 语句来将对象插入到 BLOB 或 CLOB 列时,数据库服务器在 sbspace
中,
而不是在表中,
存储该对象。
数据库服务器提供您可从 INSERT 语句之内调用的 SQL
函数来导入和导出 BLOB 或 CLOB 数据,这些数据又称为智能大对象。要了解这些函数
的描述,请参阅 智能大对象函数。
下列 INSERT 语句使用 filetoblob() 和 filetoclob() 函数来插入 inmate 表的行。(图 1 定
义 inmate 表。)
INSERT INTO inmate
VALUES (437, FILETOBLOB('datafile', 'client'),
FILETOCLOB('tmp/text', 'server'));
在前一示例中,FILETOBLOB() 和 FILETOCLOB() 函数的第一个参数分别指定要复制
到 inmate 表的 BLOB 和 CLOB 列内的源文件的路径。
每一函数的第二个参数指定该源文件
是位于客户机计算机('client'),还是位于服务器计算机('server')。要在该函数参数中指
定文件名称的路径,请应用下列规则:
1.
如果源文件驻留在服务器计算机上,则您必须指定该文件的完全路径名称(不是相
对于当前工作目录的路径名称)。
2.
如果源文件驻留在客户机计算机上,则您可指定该文件的完全路径或相对路径。