文章
姚 鑫 · 八月 29, 2021 阅读大约需 6 分钟

第一章 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。在计数中,对所有行(包括空值和重复项)进行计数。在GRANTREVOKE中,所有基本权限、所有表或所有当前定义的用户。 %MATCHES 模式字符串的多字符通配符。乘法算术运算符。
*/ 星号斜杠:多行注释结束指示符。注释以/*开头。
+ 加号(43):加法算术运算符。一元正号运算符。
, 逗号(44):列表分隔符,例如多个字段名称。在数据大小定义中:数字(精度,小数位数)。
连字符(减号)(45):减法算术运算符。一元负号运算符.SQLCODE错误代码前缀:-304.日期分隔符.In %MATCHES 方括号内指定的范围指示符模式字符串。例如,[a-m]
–– 双连字符:单行注释指示符。
–> 连字符,大于(箭头):隐式联接箭头语法。
. 句点(46):用于分隔多部分名称的各个部分,例如限定的表名:schema.tablename或列名:tablealias.fieldname以美国数字格式表示数字文字的小数点。俄语、乌克兰语和捷克语区域设置的日期分隔符:DD.MM.YYYY作为变量或数组名称的前缀,指定通过引用传递:.name %PATTERN字符串多字符通配符。
/ 斜杠(47):除法算术运算符。日期分隔符。
/* 斜杠星号:多行注释开始指示符。注释以*/结尾。
: 冒号(58):主机变量指示符前缀::var。小时、分钟和秒的时间分隔符。在CASTCONVERT函数中,可选的每秒千分之一的分隔符。在触发器代码中,表示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字段数据中使用。
00
1 0 0 137
登录或注册以继续