Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


标识符表达式

📄字数 750
👁️阅读量 加载中...

概述

标识符表达式用于引用数据库中的表、列、别名等对象,是SQL表达式中变量部分的核心组成。

支持的标识符类型

类型说明示例
列名最常见的标识符表达式name
表名.列名使用表名限定列名,避免多表查询中的歧义employee.name
模式名.表名使用模式名限定表名,避免多表查询中的歧义sysdba.employee
别名表或字段的别名employee.name AS ep_nm

示例

sql
-- 建表
SQL> CREATE TABLE department (
       id INT PRIMARY KEY,
       name VARCHAR(50)
     );

-- 建表
SQL> CREATE TABLE employee (
            id INT PRIMARY KEY,
            name VARCHAR(50),
            dept_id INT,
            salary INT
          );

-- 插入数据
SQL> INSERT INTO department VALUES
     (1, 'HR'),
     (2, 'Engineering');

SQL> INSERT INTO employee VALUES
     (1, 'Alice', 2, 8000),
     (2, 'Bob', 2, 12000),
     (3, 'Eve', 1, 6000);

-- 使用标识符表达式进行查询
SQL> SELECT
       name,                                 -- 列名
       employee.name,                        -- 表名.列名
       sysdba.department.name AS dept_name,  -- 模式名.表名.列名
       employee.salary AS emp_salary         -- 列别名
     FROM
       sysdba.employee                       -- 模式名.表名
     JOIN
       sysdba.department
     ON
       employee.dept_id = department.id;

+-------+-------+-------------+------------+
| NAME  | NAME  |  DEPT_NAME  | EMP_SALARY |
+-------+-------+-------------+------------+
| Alice | Alice | Engineering | 8000       |
| Bob   | Bob   | Engineering | 12000      |
| Eve   | Eve   | HR          | 6000       |
+-------+-------+-------------+------------+

应用场景

  • 场景一:SELECT后直接引用列名,查询列字段
  • 场景二:用AS或空格方式设置临时列名,对列进行重命名(别名)
  • 场景三:给表设置临时名用于简化引用