下面的两个例子列出了用 SELECT 语句把内置函数作为列名的一个变通方法。这种变通方法应用于聚集函数(AVG 、COUNT 、MAX 、MIN 、SUM)和函数表达式(代数、指数和对数、time 、HEX 、length 、DBINFO 、trigonometric 和 TRIM 函数)。
SELECT avg FROM mytab; -- fails
SELECT "avg" from mytab; -- successful
SELECT mytab.avg FROM mytab;
CREATE TABLE mytab (user char(10), CURRENT DATETIME HOUR TO SECOND,TODAY DATE); INSERT INTO mytab VALUES('josh','11:30:30','1/22/2008'); SELECT user,current,today FROM mytab;
数据库服务把 SELECT 语句中的 user 、current 和 today 解释成内置函数 USER 、CURRENT 和 TODAY。于是 SELECT 语句返回了当前用户名、当前时间和当前日期而不是 josh, 11:30:30,1/22/2008。SYSDATE 关键字在 GBase 8s 数据库中具有类似的效果。
SELECT mytab.user, mytab.current, mytab.today FROM mytab; EXEC SQL select * from mytab;