文章目录
-
第一章 SQL中使用的符号 - 符号表
第一章 SQL中使用的符号
SQL中用作运算符等的字符表
符号表
每个符号的名称后跟其ASCII十进制代码值。
符号 | 名称和用法 |
---|---|
[space] or [tab] | 空白(制表符(9) 或空格(32 )):关键字、标识符和变量之间的一个或多个空白字符。 |
! | 感叹号(33 ):条件表达式中谓词之间的或逻辑运算符。用于WHERE 子句、HAVING 子句和其他地方。在SQL Shell 中! 命令用于发出ObjectScript命令行。 |
!= | 感叹号/等号:不等于比较条件。 |
" | 引号(34 ):包含一个分隔的标识符名称。在动态SQL中,用于将类方法参数的文字值括起来,例如将SQL代码作为%Prepare() 方法的字符串参数,或者将输入参数作为%Execute() 方法的字符串参数。在%PATTERN 中,用于将文字值包含在模式字符串中。例如,'3L1"L".L' (意思是3 个小写字母,后面跟着大写字母“L” ,后面跟着任意数量的小写字母)。在XMLELEMENT 中,用于括起标记名字符串。 |
"" | 两个引号:本身是无效的分隔标识符。在分隔标识符内,文字引号字符的转义序列。例如,"a""good""id" 。 |
# | 井号(35 ):有效的标识符名称字符(不是第一个字符)。前后带有空格的模算术运算符。对于嵌入式SQL,是ObjectScript宏预处理器指令前缀。例如,#include 。在SQL Shell 中,# 命令用于从SQL Shell 历史记录缓冲区调回语句。 |
$ | 美元符号(36 ):有效的标识符名称字符(不是第一个字符)。某些IRIS扩展SQL 函数的第一个字符。 |
$$ | 双美元符号:用于调用ObjectScript用户定义函数(也称为外部函数)。 |
% | 百分号(37 ):标识符名称的有效第一个字符(仅第一个字符)。某些 SQL 标准扩展的第一个字符,包括字符串排序函数(%SQLUPPER )、聚合函数(%DLIST )和谓词条件(%startswith )。SELECT 中%ID 、%TABLENAME 和%CLASSNAME 关键字的第一个字符。一些特权关键字(%CREATE_TABLE 、%ALTER )和一些角色名(%ALL )的第一个字符。 |
%% | 双百分号:伪字段引用变量关键字的前缀:%%CLASSNAME 、%%CLASSNAMEQ 、%%ID 和%%TABLENAME ,在ObjectScript计算字段代码和触发器代码中使用。 |
& | 与号(38 ):WHERE 子句和其他条件表达式中的AND 逻辑运算符。$BITLOGIC 位串和运算符。嵌入式SQL 调用前缀: |
' | 单引号字符(39 ):将字符串文字括起来。 |
'' | 双单引号字符:空字符串文字。字符串值中文字单引号字符的转义序列。例如:‘can’‘t’ |
( ) | 圆括号(40,41 ):用逗号分隔列表。将SQL 函数的参数括起来。将过程、方法或查询的参数列表括起来。大多数情况下,即使未提供参数或参数,也必须指定圆括号。在SELECT DISTINCT BY 子句中,将用于选择唯一值的项或项的逗号分隔列表括起来。在SELECT 语句中,将子查询括在FROM 子句中。括起UNION 中使用的预定义查询的名称。括起主机变量数组下标。例如,INTO:var(1),:var(2) 包含嵌入式SQL 代码:用于在算术运算中强制优先:3(3*5)=18 。用于对谓词进行分组:WHERE NOT (Age<20 AND Age>12) . |
(( )) | 双圆括号:禁止缓存查询中的文字替换。例如,SELECT TOP ((4)) Name FROM Sample.Person WHERE Name %STARTSWITH (('A')) .优化非空离群值的WHERE 子句选择。 |
* | 星号(42 ):通配符,在以下情况下表示“ALL” :在SELECT RETERVE ALL COLUMNS 中:SELECT*FROM TABLE 。在计数中,对所有行(包括空值和重复项)进行计数。在GRANT 和REVOKE 中,所有基本权限、所有表或所有当前定义的用户。 %MATCHES 模式字符串的多字符通配符。乘法算术运算符。 |
*/ | 星号斜杠:多行注释结束指示符。注释以 结尾。 |
: | 冒号(58 ):主机变量指示符前缀::var 。小时、分钟和秒的时间分隔符。在CAST 和CONVERT 函数中,可选的每秒千分之一的分隔符。在触发器代码中,表示ObjectScript标签行的前缀。在CREATE PROCEDURE ObjectScript代码体中,是宏预处理器指令前缀。例如:#include 。 |
:: | 双冒号:在触发器代码中,这个双前缀表示该行开始的标识符(::name )是主机变量,而不是标签行。 |
; | 分号(59 ):过程、方法、查询和触发器代码中的SQL语句结尾分隔符。ImportDDL() 或任何使用TSQL方言指定SQL代码的地方都接受它作为语句末尾的可选分隔符。否则, SQL不会在SQL语句末尾使用或允许使用分号。 |
< | 小于(60 ):小于比较条件。 |
<= | 小于等于:小于等于比较条件。 |
<> | 小于/大于:不等于比较条件。 |
= | 等号(61 ):等于比较条件。在WHERE 子句中,内联接。 |
> | 大于(62 ):大于比较条件。 |
>= | 大于等于:大于等于比较条件。 |
? | 问号(63 ):在动态SQL中,由Execute 方法提供的输入参数变量。%MATCHES 模式字符串的单字符通配符。在SQL Shell 中? 命令显示SQL Shell 命令的帮助文本。 |
@ | 在符号(64 )处:有效的标识符名称字符(不是第一个字符)。 |
E, e | 字母“E” (69,101 ):指数指示符。指定任何可打印字符的%PATTERN 代码。 |
[ | 左方括号(91 ):包含谓词。用于WHERE 子句、HAVING 子句和其他地方。 |
[ ] | 左方括号和右方括号:在%Matches 模式字符串中,将匹配字符的列表或范围括起来。例如,[abc] 或[a-m] 。 |
\ | 反斜杠(92 ):整数除法算术运算符。%MATCHES 模式字符串转义字符。 |
] | 右方括号(93 ):跟在谓词后面。用于WHERE 子句、HAVING 子句和其他地方。 |
^ | 加号(94 ):%MATCHES 模式字符串一个非字符。例如,[^abc] 。 |
_ | 下划线(95 ):标识符名称的有效第一个(或后续)字符。某些用户名(但不是密码)的有效第一个字符。用于列名以表示嵌入的串行类数据:选择Home_State ,其中Home 是引用串行类的字段,State 是在该串行类中定义的属性。LIKE 条件谓词单字符通配符。 |
{ } | 大括号(123,125 ):用ODBC标量函数括起来:{fn name(...)} 。将时间和日期构造函数括起来{d 'string'}, {t 'string'}, {ts 'string'} 。在过程、方法、查询和触发器代码中关闭ObjectScript代码。 |
|| | 双竖线(124 ):串联运算符。复合ID 指示器。由 IRIS用作生成的复合对象ID (串联ID )中多个属性之间的分隔符。它可以是在多个属性上定义的IDKey 索引(pro1||pro2 ),也可以是父子关系的ID (parent||Child )。不能在IDKEY 字段数据中使用。 |