GBase 8s
运维管理
文章

GBase8s数据库SELECT 语句6

发表于2025-11-11 09:56:5123次浏览3个评论

Select 列表中的表达式

在选择列表中,您可使用任何基本类型的表达式(列、常量、内建的函数、聚集函数和用户定义的

例程)及其组合。在 表达式 中描述表达式类型。以下部分展示在选择列表中的简单表达式的示

例。

您可通过加、减、乘、除算术运算符将简单的数值表达式连接组合起来。然而,如果您组合列表达

式与聚集函数,则必须在 GROUP BY 子句中包括该列表达式。(另请参阅 GROUP BY 与

Projection 子句之间的依赖。)

通常,您不可在选择列表中使用变量(例如,在 GBase 8s ESQL/C 应用程序中的主变量)本身。

然而,如果以算术运算符或连接运算符将它与变量相连接,则选择列表中的变量是有效的。

在 FOREACH SELECT 语句中,当 FROM 子句中的表为远程表时,您不可使用选择列表中的

SPL 变量本身或随同列名称使用。当 FROM 子句中的表为本地表时,您可使用 SPL 变量自身,

或随同选择列表中的常量使用。

在 GBase 8s 的分布式查询中,表达式中的值(以及表达式返回的值)是受限的,如 跨服务器事务

中的数据类型 所述。在同一 GBase 8s 实例的其他数据库中将其返回值用作表达式的任何 UDR,

必须定义在每一参与的数据库中。

在 Projection 子句中,布尔操作符 NOT 不是有效的。

选择列

列表达式是在 SELECT 语句中最常用的表达式。要获取列表达式的语法和使用的完整描述,请参

阅 列表达式。下列示例在 Projection 子句中使用列表达式:

SELECT orders.order_num, items.price FROM orders, items;

SELECT customer.customer_num ccnum, company FROM customer;

SELECT catalog_num, stock_num, cat_advert [1,15] FROM catalog;

SELECT lead_time - 2 UNITS DAY FROM manufact;

选择常量

如果您在 projection 列表中包含常量表达式,则对查询返回的每一行返回相同的值(除了当常量表

达式为 NEXTVAL 之外)。要了解常量表达式的语法和使用的完整描述,请参阅 常量表达式。下列

示例展示选择列表之内的常量表达式:

SELECT 'The first name is', fname FROM customer;

SELECT TODAY FROM cust_calls;

SELECT SITENAME FROM systables WHERE tabid = ;1

SELECT lead_time - 2 UNITS DAY FROM manufact;

SELECT customer_num + LENGTH('string') from customer;

评论

登录后才可以发表评论
GBase用户31099发表于 8个月前
学习下
用户头像
levvel发表于 8个月前
进来看看,应该有收获
用户头像
levvel发表于 6个月前
哎呀,怎么说呢,嗯......