SAP HANA 使用巴科斯範式(Backus Naur Form)形式化符號來描述語法:
巴克斯範式的內容:
尖括號( < > )內包含的爲必選項。
: : = 是 “被定義爲”的意思。
方括號( [ ] )內包含的爲可選項。
大括號( { } )內包含的爲可重複0至無數次的項。
豎線( | )表示在其左右兩邊任選一項,相當於"OR"的意思。
省略號(...)表示該元素可以重複任意多次。如果省略號後面出現分組元素,重複括號裏面指定的分組元素。如果省略後出現一個單元素的元素,只是重複單元素。
!! :介紹了常用的英語文本。這是用於定義一個語法元素不是表示在BNF。
形式:
symbol := alternative1 | alternative2 ... 每條規則申明 ::=左側的符號必須被右側的某一個可選項代替.
實例講解:創建索引
CREATE [UNIQUE] [BTREE | CPBTREE] INDEX <index_name> ON <table_name> (<column_name_order>, ...) [ASC | DESC];
創建索引:
有兩種可選項 [UNIQUE] [BTREE | CPBTREE]
[BTREE | CPBTREE] :可以選擇 BTREE 或者CPBTREE
<table_name>:指定表也爲必選項。
[ASC | DESC]:可以選擇 ASC 或者 DESC
(<column_name_order>, ...):<column_name_order>可以重複多次。
<index_name> ::= [<schema_name>.]<identifier>
[<schema_name>.]:可選項指定schema名。
<identifier>:必選項索引名稱。
<column_name_order> ::= <column_name> [ASC | DESC]
<column_name>:必選項
[ASC | DESC]:可以選擇 ASC 或者 DESC