解析器在解析内置函数名称时使用哪些默认规则?


实际上,当解析器遇到一个表示内置函数名称的单词时,它必须确定该名称表示函数调用还是表示对标识符(例如表名或列名)的非表达式引用。考虑以下查询:

1. Select sum(salary) from employee;
2. Create table sum (i int);

在第一个查询中,SUM 是对函数调用的引用,在第二个查询中,它引用的是表名。

解析器遵循以下规则来区分其名称是在用作函数调用还是在非引用上下文中用作标识符:

  • 规则1 - 要在表达式中将名称用作函数调用,名称与后面的左括号字符之间不能有空格。
  • 规则2 - 反之,要将函数名称用作标识符,它后面不能紧跟着一个括号。

更新于: 2020-06-22

115 次查看

开启你的 职业生涯

完成课程获得认证

开始学习
广告