当前位置: 首页 > news >正文

天津魔方网站建设WordPress模板转换typecho

天津魔方网站建设,WordPress模板转换typecho,某商贸网站建设方案,ps做电商网站图标KingbaseES聚焦产品上线:金仓数据库在线体验平台上线,开启数据库实践新征程KingbaseES 在线体验平台是为数据库使用者、开发者、架构师及 DBA 打造的轻量化实践平台,无需本地安装数据库环境,通过浏览器即可快速上手,降…

KingbaseES聚焦产品上线:金仓数据库在线体验平台上线,开启数据库实践新征程

在这里插入图片描述

KingbaseES 在线体验平台是为数据库使用者、开发者、架构师及 DBA 打造的轻量化实践平台,无需本地安装数据库环境,通过浏览器即可快速上手,降低技术探索门槛,加速对金仓数据库功能特性的验证与学习,助力技术预研、选型验证及新手能力提升 。

KingbaseES在线体验平台注册

1、注册KingbaseES官方账户

在这里插入图片描述

2、手机号注册即可

在这里插入图片描述

3、服务与支持-KingbaseES在线体验平台

在这里插入图片描述

4、即可完成在线体验

在这里插入图片描述

KingbaseES在线体验平台体验

索引

索引是一种与表相关联的数据结构,是为了提高数据检索的性能而建立的。KingbaseES索引为表数据提供快速存取路径。索引适用于一范围的行查询或指定行的查询。索引可建立在一个表的一列或多列上,一旦建立,将由 KingbaseES 数据库自动维护和使用,对用户是完全透明的,系统的优化器会根据统计信息确定是否使用索引来提高系统性能。索引逻辑和物理上都独立于与其相关联的表数据。因此,可以删除或创建索引,但不会对索引表产生影响。

创建索引

kingbaseES使用 create index 语句来创建普通b-tree索引

示例:在customers表的c_name列上创建索引

create index indx_c_name on customers(c_name);

在itms分区表中的i_price列上创建本地索引

 create index indx_i_price  on items (i_price) local;

在order表的o_id和o_date列上创建组合索引

create index idx_o_i_d on orders (o_id, o_date);

使用create unique index语句在orders表中为o_id列创建唯一索引

create unique index  o_u_id on  orders (o_id);
查看索引

通过使用select语句查询sys_indexes视图查看相关索引索引

示例:sql复制

select * from sys_indexes where schemaname='public';
修改索引

使用alter index语句可以o_u_id索引的相关属性信息

示例:使用alter index语句将o_u_id索引重命名为indx_rename_u_id

alter index o_u_id rename to indx_rename_u_id;

使用alter index语句将indx_rename_u_id设置索引填充因子

alter index indx_rename_u_id set (fillfactor = 60);
重建索引

使用reindex index语句重建indx_i_price索引:

reindex index indx_c_name;

使用reindex table语句重建表上所有索引:

reindex table orders;
删除索引

使用 drop index 语句删除索引

drop index indx_rename_u_id;

查询

查询是从一个或多个表或视图中检索数据的操作。顶级SELECT语句称为查询,嵌套在另一个SQL语句中的查询称为子查询。本节描述一些查询与子查询类型以及如何使用它们。

SELECT 命令的一般语法是:

[WITH with_queries] SELECT select_list FROM table_expression [sort_specification]
示例查询
  • 简单查询

查询所有订单信息

SELECT O_ID, O_DATE, C_ID, I_ID, O_QUANTITY, O_TOTAL_PRICE FROM orders;
  • 关联查询

查询客户的姓名和他们下的订单总数

SELECT I_NAME, I_STOCK FROM items GROUP BY I_NAME, I_STOCK;
  • 分组查询

查询每个商品的库存情况(按价格分类)

SELECT c.C_NAME, COUNT(o.O_ID) AS order_count FROM customers c JOIN orders o ON c.C_ID = o.C_ID GROUP BY c.C_NAME;
  • 子查询

查询订单金额大于 500 的订单信息

SELECT * FROM orders WHERE O_TOTAL_PRICE > ( SELECT AVG(O_TOTAL_PRICE) FROM orders);
  • with子句

计算每个客户的总消费金额,并筛选出消费金额最高的前5名客户

WITH customer_total_amount AS (SELECT c.C_NAME,SUM(o.O_TOTAL_PRICE) AS total_amountFROM customers cJOIN orders o ON c.C_ID = o.C_IDGROUP BY c.C_NAME
)
SELECT * 
FROM customer_total_amount
ORDER BY total_amount DESC
LIMIT 5;

视图

视图是一个或多个表的逻辑表示形式。与表不同,视图既不分配存储空间,也不包含数据,而是通过定义的一个查询,从它所引用的基表中提取或派生出数据。视图的数据来自它所依赖基表,基表可以是表或其他视图。在视图上执行的所有操作实际上都指向基表

视图创建

通过create view命令来进行创建视图,示例如下

  • 销售统计视图

功能:按日期汇总订单金额和数量

CREATE VIEW sales_summary AS
SELECT DATE(o.O_DATE) AS order_date,COUNT(o.O_ID) AS order_count,SUM(o.O_TOTAL_PRICE) AS total_sales
FROM orders o
GROUP BY DATE(o.O_DATE);
  • 库存预警视图

功能:监控库存量低于 10 的商品

CREATE VIEW low_stock_items AS
SELECT i.I_ID,i.I_NAME,i.I_STOCK
FROM items i
WHERE i.I_STOCK < 60;
  • 客户消费记录视图

功能:展示客户的订单历史和总消费金额

CREATE VIEW customer_purchase_history AS
SELECT c.C_NAME,o.O_DATE,i.I_NAME,o.O_QUANTITY,o.O_TOTAL_PRICE
FROM customers c
JOIN orders o ON c.C_ID = o.C_ID
JOIN items i ON o.I_ID = i.I_ID;
视图查询
  • 查询销售统计视图
SELECT * FROM sales_summary  WHERE order_date = '2023-10-01';
  • 查询库存预警视图
SELECT * FROM low_stock_items;
  • 查询Alice Smith的订单历史和总消费金额
SELECT * FROM customer_purchase_history  WHERE C_NAME = 'Alice Smith';
视图信息查询

通过使用select语句查询sys_views视图查看相关索引索引

select * from sys_views where schemaname='public';
删除视图

通过drop view命令来进行删除视图对象

drop view customer_purchase_history;

函数

SQL函数在KingbaseES数据库中作为内置组件存在,适用于多种SQL语句,需注意区分于由PL/SQL编写的用户自定义函数

调用这些SQL函数时,若参数类型不符,KingbaseES会自动将其转换为函数所需的数据类型,确保执行无碍

创建函数

示例:计算订单的折扣金额

CREATE OR REPLACE FUNCTION calculate_discount_amount(_o_id INT)
RETURNS DECIMAL(8,2) AS $$
DECLARE total_price DECIMAL(8,2);
BEGIN-- 从 orders 表中获取订单的总价SELECT O_TOTAL_PRICE INTO total_price FROM orders WHERE O_ID = _o_id;-- 假设折扣率为 10%RETURN total_price * 0.10;
END$$
LANGUAGE plpgsql;

查看订单ID=1的原价

SELECT * from orders where o_id=1; 

查看订单 ID=1 的折扣金额

SELECT calculate_discount_amount(1) AS discount_amount; 

2599.98*0.1=259.9980,符合预期

触发器

触发器通过在数据操作时自动执行任务,强化了数据完整性和系统的自动化能力。合理设计和使用触发器,可以提升应用的效率、可靠性和安全性,但在开发和维护过程中需综合考虑性能影响和复杂性问题。

下面已一个简单示例来说明

创建触发器

示例

  • 插入触发器

功能:每当插入一条新订单时,触发器会从商品表中减去相应数量的商品库存

\set SQLTERM /
CREATE TRIGGER update_stock_AFTER_INSERT 
AFTER INSERT ON orders
FOR EACH ROW
BEGINUPDATE items SET I_STOCK = I_STOCK - NEW.O_QUANTITY WHERE I_ID = NEW.I_ID;
END;
/

查看当前库存情况

select * from items;

商品编号为1的库存为50

往order订单表中插入一条数据

INSERT INTO orders VALUES('11','2023-11-01', 1, 1, 1, 200),  

再试试查看订单情况

select * from items;

商品编号为1的库存为49,证明触发器生效了

删除触发器
drop trigger update_stock_AFTER_INSERT;

总结

KingbaseES 中,索引作为提升数据检索性能的数据结构,可通过CREATE INDEX建立 B-Tree、组合或唯一索引等,并支持查看、修改、重建及删除操作;查询操作涵盖简单查询、关联查询、分组查询、子查询及 WITH 子句等类型,能从表或视图中高效检索数据;视图是基表的逻辑映射,不存储实际数据,可通过CREATE VIEW创建销售统计、库存预警等视图以简化复杂查询;函数通过 PL/pgSQL 编写,如calculate_discount_amount函数可计算订单折扣金额;触发器在数据操作时自动执行,例如插入订单时触发库存更新,通过CREATE TRIGGER创建后可通过DROP TRIGGER删除,这些功能共同强化了数据库的性能、安全性与自动化能力。

http://www.dtcms.com/a/456720.html

相关文章:

  • 小工具大体验:rlwrap加持下的Oracle/MySQL/SQL Server命令行交互
  • AI智能体的未来:从语言泛化到交互革命
  • 云计算划分标准与Kubernetes NetworkPolicy深度解析
  • 学院网站建设功能网络公关案例
  • 【HTML】实现一个AI角色切换网页页面
  • 【51单片机】【protues仿真】基于51单片机矩阵电子琴系统
  • 网站怎样做免费优化有效果组织部信息化建设官方网站
  • 使用telnet进行Dubbo接口测试
  • 定时器实现非阻塞式程序
  • ArrayList - 数据结构 - 数组
  • 做网站的注意什么问题哪些经营范围是包含网站开发的
  • 【Python】基于 PyQt6 和 Conda 的 PyInstaller 打包工具
  • MyBatis Plus 核心功能与用法
  • LNMP架构实践
  • 自己怎么建个网站赚钱吗外贸品牌推广公司
  • 在线咨询 1 网站宣传建立免费公司网站
  • 10-存储过程和存储函数
  • leetCode101:对称二叉树
  • 【Linux】网络部分——Socket编程 UDP实现网络云服务器与本地虚拟机的基本通信
  • 实战项目:鸿蒙多端协同智能家居控制 App 开发全流程
  • 个人用云计算学习笔记 --19 (MariaDB服务器)
  • Linux -- 信号【中】
  • Azure - 尝试创建并使用一下Azure AI Search
  • NtripShare GNSS接收机配置系统SPI读取村田SCL3300倾角数据
  • Python私教FastAPI+React构建Web应用02 什么是全栈Web应用
  • 开源安全管理平台wazuh-文件完整性监控FIM
  • 网站建设选超速云建站黄页88成立时间
  • 南通做网站ntwsd开发公司总工年终总结
  • VS Code文件监视排除设置详解
  • 3D坐标旋转公式